私はかなり新しくbashです。例えば、data.txtやdata.csvのようなファイルからcalcという名前のファイルに数値を読み込む方法を考えています。 .bash。bashでコンマで区切られた整数を使ってファイルを読む方法
私はインターフェイスが動作していますが、calc.bashに数値を読み込んで計算を行うことができます。また、私が選択した2つの数字の位置を保持する方法を知りたいと思います。
たとえば、
data.txtに1,3,4,6,10,12ENDという数字のリストがあります。 私は1と3を読んで一緒に追加しました。 どのように私は最後に離れた場所を保存するので、私は4で別の操作を行うことができます。したがって、1 + 3 = 4、4 + 4 = 8そして、 ENDを押すまでしかし、彼らがそれをすることを選択した場合のみ。
もし前の数字+ - * /を次の数字と一緒に使用しないことを選択した場合、あなたはリストの次の2つの数字に移動します。あなたが1,3で行われている場合、あなたは4,6
に移るので、これは私のCalcUI.bashこれはCalcUI.bashは
Running CalcUI:
Enter operation to be performed (+-*/ or Q to Quit): *
Use previous result as operand? (y/n): n
Reset data file pointer to start of data file? (y/n):n
Calc.bash run on Tue Apr 4 14:46:24 CDT 2017 process id 2493
Calculated result for: 3 * 35
Result: 105
press <enter> to continue
を好きに見えるものである
#!/bin/bash
while true; do
read -p "Enter operation to be performed (+-/ or Q to Quit): " op
case $op in
[+] ) echo "You chose +"; echo "+" >> Inst.txt; break;;
[-]* ) echo "You chose -"; echo "-" >> Inst.txt; break;;
[*] ) echo "You chose *"; echo "*" >> Inst.txt; break;;
[/]* ) echo "You chose /"; echo "/" >> Inst.txt; break;;
[Qq]*) exit;;
* ) echo "Please answer using the following +-/ or Q to Quit";;
esac
done
while true; do
read -p "Use previous result as operand?(y/n): " pr
case $pr in
[Yy] ) echo "You chose y";echo "y" >> Inst.txt; break;;
[Nn]*) echo "You chose n";echo "n" >> Inst.txt; break;;
* ) echo " Please answer using y or n";;
esac
done
while true; do
read -p "Reset data file pointer to start of data file?(y/n) " reset
case $reset in
[Yy] ) echo "You chose y"; break;;
[Nn]*) echo "You chose n"; break;;
* ) echo "Enter y or n";;
esac
done
exec ./Calc.bash &
次のようになります
calc.bash
とdata.txt
とcalc.bash
とcalcUI.bash
で通信する方法がわかりません。
のように見て、あなたがこれまでにしようとしているものを、SOに歓迎するだろうか?あなたがしたことと、どこで立ち往生しているのかを示す簡潔な例を提供できますか? – zmo
私のコードで投稿を更新しました。 – Przn