今回はジョブ関係のコマンドです。1980年くらいのUNIX関係の本などにはジョブの説明がありましたが、最近ではあまり見かけないような感じもあります。
ジョブはシェルの管理下になるため、シェルによってはジョブをサポートしていないものもあります。(iPhoneで動くa-shellなど)
ジョブ関係のコマンドは難しくないので、今回は軽めにやっていきましょう。
○ジョブの停止と一時停止
最初にジョブの停止方法と一時停止の方法について説明しておきます。
まず、フォアグラウンドで実行されているジョブの停止方法はコントロールキーを押したままCキーを押します。実行されているコマンドを止める場合と同じです。
watch ps
ジョブの実行を完全に停止してしまうのではなく、一時停止させることもできます。ジョブを一時停止させるにはコントロールキーを押したままZキーを押します。これはviなどエディタで編集している場合でも有効です。
vi test.txt
一時停止した処理を再開することもできますが、これは後ほど説明します。
○ジョブをバックグラウンドで実行
コマンドを入力するとジョブはフォアグラウンドで実行されます。
sleep 10
この状態だと入力したコマンドの処理が終わるまで次のコマンドを入力できません。このような処理に時間がかかる場合はバックグラウンドで処理させておくと便利です。ジョブをバックグラウンドで実行するには、コマンドの最後に&をつけます。1行で複数のバックグラウンド処理を指定することもできます。この場合は&の後に半角空白で区切って次のコマンドを指定します。zshの場合は&の後に;を指定することもできます。
以下のようにするとコマンドはバックグラウンドで処理されます。バックグラウンドで処理されるため、すぐに次のコマンドが入力できる状態になります。
sleep 10 &
ただ、今時はたくさんのターミナル(もしくはタブ)を開いてフォアグラウンドで実行させて管理した方が楽な事もあります。ここらへん時代の流れなのかなと思う事もあります。ターミナルウィンドウとタブの組み合わせにしておけば見た目にも管理しやすいというのもあります。
○ジョブの確認
ジョブを確認するには以下のようにjobsコマンドを使います。そのまま入力すると現在のジョブが表示されます。ジョブには整数の番号が割り当てられます。jobコマンドで表示される一番左側の[ ]の中に表示される数値がジョブ番号になります。ジョブが終了すると終了時点でメッセージが表示されるか、リターンキーを押した場合にメッセージが表示されます。これは環境によって異なります。
jobs
ジョブ番号をfgコマンドに指定することで一時停止したジョブを再開する事ができます。なお、fgコマンドでジョブ番号を指定する場合、ジョブ番号の前に%をつける必要があります。以下の例ではジョブ番号1の処理をフォアグラウンドにしています。
fg %1
一時停止してしまった処理をバックグラウンドで再開させることもできます。この場合はbgコマンドを使います。
bg %1
.











![[USBで録画や再生可能]Tinguポータブルテレビ テレビ小型 14.1インチ 高齢者向け 病院使用可能 大画面 大音量 簡単操作 車中泊 車載用バッグ付き 良い画質 HDMI端子搭載 録画機能 YouTube視聴可能 モバイルバッテリーに対応 AC電源・車載電源に対応 スタンド/吊り下げ/車載の3種類設置 リモコン付き 遠距離操作可能 タイムシフト機能付き 底部ボタン 軽量 (14.1インチ)](https://m.media-amazon.com/images/I/51-Yonm5vZL._SL500_.jpg)