別のコマンドが終了した後に実行するコマンドをキューに入れる方法は?


9

終了するのに非常に長い時間がかかるプログラム(emerge)を開始して、それを待たずに就寝する必要があることに気付くことがあります。そもそもこれを知っていたら走る

program; halt

しかし、すでにプログラムを開始しているので、そのプロセスが完了したときにシャットダウンするようにコンピューターを「スケジュール」するにはどうすればよいですか?うCtrl+z、その後fg; halt大丈夫?

回答:


15

はい、それでうまくいきます。

不明な場合は、

  • sleep 15

  • Ctrl+z

  • fg; echo "it works"


2

別の方法はhalt、最初のコマンドの実行中に端末に入力することです。最初のコマンドがある時点で入力を読み取らない限り、それはターミナルのバッファに置かれ、シェルは最初のプログラムが終了したときにそれを読み取ります


1

waitコマンドを使用する

$ sleep 10 &
[1] 29703
$ wait 29703 && echo hello
[1]+  Done                    sleep 10
hello
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.