Linuxのプロセスとジョブの操作ついて

プログラミング
スポンサーリンク

プロセス

メモリ上で実行状態にあるプログラムをプロセスと呼びます。

Linuxカーネルから見た処理の単位です。

LinuxカーネルがプロセスIDを割り振って、プロセス管理をしています。

現在動作しているプロセスを表示するには、psコマンドを使います。

ps

でOKです。

PIDがプロセスIDを表しています。

CMDが実行されているコマンドです。

xオプションで別ターミナルやターミナルに接続していないプロセスを表示することができます。

fオプションで親子関係を表示できます。

aオプションをxオプションに加えると、システムで動いている全てのプロセスを表示します。

TTYはターミナルを意味します。

?はSSH接続のプロセスを表示しています。

?はターミナルに接続していないプロセス(デーモン)であることを意味します。

psコマンドのオプション組み合わせ

※ハイフンなしのBSDオプションを扱います。

x:psコマンドを実行したユーザーのプロセスすべてを表示

ux:psコマンドを実行したユーザーのプロセスすべてを、詳細情報を合わせて表示

ax:すべてのユーザーのプロセスを表示

aux:すべてのユーザーのプロセスを、詳細情報を合わせて表示

auxww:auxオプションで、コマンドラインが長くターミナルの右端で切れてしまう際に、表示幅を制限せずすべて表示

ジョブ

ジョブとは、シェルから見た処理の単位です。

コマンドラインの1行が、1つのジョブです。

シェルはジョブ番号で管理しています。

複数ターミナルを起動しているとジョブ番号は重複します。

コマンドの一時停止

コマンドを一時停止するのは、

Ctrl+z

でOKです。

ジョブの一覧を表示するには、

jobs

でOKです。

-lオプションでプロセスIDも表示できます。

コマンドを再開するには、

fg %ジョブ番号

でOKです。

ユーザー入力を受け付けるジョブの状態を、フォアグラウンドと呼びます。

ジョブをバックグラウンドにする

バックグラウンドでジョブを行うには、

bg %ジョブ番号

でOKです。

バックグラウンドにすることでジョブ動作を続行できます。

はじめからジョブをバックグラウンドで実行したいときは、末尾に&を追加します

cp file1 file2 &

でOKです。

ジョブの終了

フォアグラウンドの場合は

Ctrl+c

でOKです。

バックグラウンドの場合は、

kill %ジョブ番号

でOKです。

プロセスの終了

プロセスを終了するには、Killコマンドを使います。

kill プロセスID

でOKです。

コメント

タイトルとURLをコピーしました