min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

bash ファイル移動の進捗状況をモニタリング(forループでlsして5秒毎にclear)する簡易スクリプト

だいぶ前に録画したファイルを、別のハードディスクに移動する。

時間がかかるので、移動先のディスクに今時点で何MB移動したかモニタリングしてたい。

 

bashでサッと書いてみる。5回分表示したら画面クリア(clear)することにする。途中の割り算はお遊び(bashの動作確認)なので無視でOK。

 

$ for i in `seq 1 100`; do echo "$i"; ls -shar | egrep 'わるいや'; echo `date`; echo -n "$i"' / 2 = '; echo $*1 ; echo -n "$i"' % 2 = '; echo $*2; echo '---------------------'; if [[ $*3 == 0 ]]; then sleep 2; clear; fi; sleep 3; done

 

こんな感じ。

f:id:min117:20190119124756p:plain

 

検索文字列を入力させて動作するスクリプトにしちゃう。

$ vim mycnt.sh

f:id:min117:20190119131335p:plain

 

実行。

f:id:min117:20190119131306p:plain

よし。

 

エイリアス alias にも入れておくか。シングルクオートのエスケーブだけ注意必要だけど。  

 

 

 

*1: $i / 2

*2: $i % 2

*3: $i % 5