その3のヒント
Completion requirements
1) 課題1は最初に1行で数値を表示するように作成し、後で4桁に表示を別ける処理を追加した方がスムーズ。
2) 4桁で数値を表示する一つの方法
例) 数値が 2345 の場合
2345 / 1000 = 2 (2345を1000で割ると整数部分は 2)
2345 % 1000 = 345 (2345を1000で割ったあまりは 345)
345 / 100 = 3 (345を100で割った整数部分は 3)
345 % 100 = 45 (345を100で割ったあまりは 45)
45 / 10 = 4 (45を10で割った整数部分は 4)
45 % 10 = 5 (45を10で割ったあまりは 5)
これを変数とexprコマンドで実装すれば良い。
3) カウンタの値はファイルに保存すると便利。
例) ファイルcount.datから値を変数VALUEに読み込む場合
VALUE=`cat count.dat`
例) ファイルcount.datへ変数VALUEの値を書き込む場合
echo $VALUE >| count.dat
4) ロックファイルが正しく動いているか、テストプログラムでテストすると良い
例) 10回ほぼ同時にシェルプログラム count.sh を呼ぶ
#!/bin/sh
#カウンタをリセット
echo 0 >| .count.dat
#10回 カウンタプログラム counter を呼ぶ
I=0
while [ $I -lt 10 ]; do
./count.sh &
I=`expr $I + 1`
done
Last modified: Friday, 18 April 2014, 5:52 PM