現在、タスクを自動的に実行するための bash スクリプトを作成しています。私のスクリプトでは、タスクを実行しているときに進行状況メッセージを表示したいと考えています。
例えば:
user@ubuntu:~$ 何か設定してください
->
何かを設定します。
->
何かを設定..
->
何かを設定...
->
何かを構成する...完了
すべての進行状況メッセージが同じ行に表示されます。以下は、これまでの私の回避策です。
echo -n "Configure something "
exec "configure something 2>&1 /dev/null"
//pseudo code for progress message
echo -n "." and sleep 1 if the previous exec of configure something not done
echo " done" if exec of the command finished successfully
echo " failed" otherwise
exec はコマンドが終了するのを待ってから、後でスクリプト行を続行しますか? もしそうなら、何かを設定する実行と同時にメッセージをエコーするにはどうすればよいですか? exec が前のコマンドを終了して true を返すタイミングを知るにはどうすればよいですか? 使用し$?
ますか?