このコマンドを実行すると、sleep 10
端末は10秒間待機します。sleep
ターミナル操作も同様です。これを行うとどうなりますかsleep 10 &
?最初のケースでは端末で実行されますが、バックグラウンドでは何をしていますか?特に何がsleep
あなたを眠らせたいのですか?
ベストアンサー1
sleep
バックグラウンドで実行されても、意図した目的、つまりスクリプト内で他のタスクを遅らせる目的はありません。
例:
echo "foo" && sleep 10s && echo "bar"
fooを印刷して10秒待ってからbarを印刷します。 2番目は、echo
スリープが終了するのを待ち、実行が成功した場合にのみ実行を開始します。
echo "foo" && sleep 10s & echo "bar"
foo、Invokeを印刷します。これは、待機するプロセスがフォアグラウンドにないため、sleep
バックグラウンドに送信され、すぐに実行されます。echo