GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでのpsコマンドの基本的な例

Linuxのpsコマンドとは何ですか?

Linuxのpsコマンドは、システムで実行中のプロセスについて表示するために使用されます。自分または他のユーザーが同じLinuxシステムで実行しているプロセスのプロセスID(PID)などの情報を取得できます。

psコマンドはそれ自体が広範なツールであり、80を超えるコマンドオプションがあります。その強さと複雑さを理解することができます。これが、Linuxでのpsコマンドの最も一般的で最も有用な例のいくつかを紹介する理由です。

Linuxでのpsコマンドの基本的な使用法

Linuxでオプションを指定せずにpsコマンドを使用すると、現在のシェルで実行中のプロセスが表示されます。

ps

これが出力です。バックグラウンドでGeditコマンドを送信したので、3つのプロセスが表示されます。それ以外の場合は、通常、psとbashのみが表示されます。

  PID TTY          TIME CMD
  503 pts/0    00:00:00 gedit
 2053 pts/0    00:00:00 ps
31585 pts/0    00:00:00 bash

ここで:

  • PIDはプロセスの一意のプロセスIDです
  • TTYは、ユーザーがログインしている端末のタイプです。 ptsは疑似端末を意味します
  • TIMEは、プロセスが実行されている時間を示します
  • CMDは、プロセスを起動するために実行するコマンドです

さて、これは実際に有用な情報を提供するものではありません。 psコマンドのより良い例をいくつか見てみましょう:

1。実行中のすべてのプロセスを表示

実行されているすべてのプロセスを確認する場合は、次のようにオプションxを指定してpsコマンドを使用できます。

ps -x

xオプションは、現在のtty(端末タイプ)に関連付けられていない場合や、制御端末(デーモンなど)がない場合でも、すべてのプロセスを表示します。

– beforeオプションxはオプションですが、一般的なLinuxの規則では– beforeオプションを使用するため、これを継続することをお勧めします。傷つけることはありません。

これは出力がどのように見えるかです。数百行あるため、出力を切り捨てました:

  PID TTY      STAT   TIME COMMAND
  503 pts/0    Sl     0:00 gedit
 2245 ?        S      0:00 /usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh
 3039 ?        Ss     0:00 /lib/systemd/systemd --user
 3040 ?        S      0:00 (sd-pam)
 3054 ?        SLl    0:01 /usr/bin/gnome-keyring-daemon --daemonize --login
 3059 tty2     Ssl+   0:00 /usr/lib/gdm3/gdm-x-session --run-script env 

上記の出力のSTATは、プロセス状態コードを意味します。詳細な表は、psコマンドのマニュアルページにあります。

ただし、オプションxだけでpsコマンドが使用されることはめったにありません。通常、この方法でオプションuが付随します:

ps -ux

オプションuを使用すると、各プロセスに関する詳細情報が得られます。

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
abhishek   503  0.0  0.4 681580 37516 pts/0    Sl   18:09   0:00 gedit
abhishek  2245  0.0  0.0  11300  1496 ?        S    18:37   0:00 /usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh
abhishek  3039  0.0  0.0  77344  3508 ?        Ss   10:37   0:00 /lib/systemd/systemd --user
abhishek  3040  0.0  0.0 114632   360 ?        S    10:37   0:00 (sd-pam)
abhishek  3054  0.0  0.1 517104 11512 ?        SLl  10:37   0:01 /usr/bin/gnome-keyring-daemon --daemonize --login

ご覧のとおり、各プロセスのユーザー名とCPU消費量およびメモリ使用量を取得できます。 RSSは、プロセスが現在RAMに持っているメモリの量を示し、VSZは、プロセスが合計で持っている仮想メモリの量を示します。

2。 psauxコマンドで実行中のすべてのプロセスを表示

おそらくps -auxが表示されます またはps aux Linuxのチュートリアルとドキュメントでは常に。

-aオプションを追加すると、Linuxシステム上のすべてのユーザーが実行中のプロセスを確認できます。

ps -aux

コマンド出力はps-uxと同じですが、他のユーザーからのプロセスもあります。 -uオプションのおかげで、どのプロセスがどのユーザーに属しているかを識別できます。

3。 Linuxでps-efコマンドを使用して実行中のすべてのプロセスを表示する

ps -auxとは別に、-eコマンドを使用して実行中のすべてのプロセスを一覧表示することもできます。一般的な方法は、オプションfと組み合わせて、プロセスの実行に使用されるコマンドの完全なリストを取得することです。

ps -ef

注意してください– eが重要である前に、そうでない場合は異なる結果を示します。言っておきますが、psはめちゃくちゃで複雑なコマンドです。

Hオプションを組み合わせて、スレッドビューですべてのプロセスを親の下の子プロセスと表示することもできます。

ps -efH

4。特定のユーザーによる実行中のすべてのプロセスを表示する

特定のユーザーによって実行されるすべてのプロセスに関する情報を取得するには、ユーザー名に-Uオプションを使用できます。

ps -U user_name

たとえば、次のようにrootユーザーが実行しているすべてのプロセスを確認できます。

ps -U root
  PID TTY          TIME CMD
    1 ?        00:00:41 systemd
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 rcu_gp
    4 ?        00:00:00 rcu_par_gp
    8 ?        00:00:00 mm_percpu_wq
    9 ?        00:00:03 ksoftirqd/0
   10 ?        00:01:22 rcu_sched

5。グループによって実行されるすべてのプロセスを表示する

グループ名またはグループIDを指定して、実行中のプロセスをユーザーではなくグループ別に分類することもできます。

ps -G group_name_or_id

オプションfと組み合わせて、完全なリストを取得できます。

6。プログラムのすべてのオカレンスとPIDを取得する

psコマンドの基本的な使用法の1つは、実行中のプログラムのプロセスID(PID)を取得することです。通常、動作に問題のあるプログラムを強制終了する場合は、プログラムのすべてのオカレンスを検索し、それらのPIDを取得し、killコマンドを使用してプロセスを終了します。

ps -C program__name

たとえば、aptパッケージマネージャーの実行中のすべてのインスタンスを検索する必要がある場合:

ps -C apt
  PID TTY          TIME CMD
11425 pts/1    00:00:00 apt

grepコマンドを使用して同様の結果を取得することもできます。

ps aux | grep program_name

7。 PIDに関するプロセス情報を取得する

大丈夫! PIDを持っていますが、それがどのプロセスに属しているのかわかりません。 psコマンドを使用して、次の方法でPIDからプロセス情報を見つけることができます。

ps -pN

複数のPIDをカンマで区切って使用できます:

ps -pN1,N2,N3

他に何がありますか?

前に述べたように、psは複雑で広範なコマンドです。これらは、ほとんどの場合に必要となる最も一般的なpsコマンドの例の一部です。さらに必要な場合は、いつでもそのマニュアルページを参照できます。

定期的に使用するpsコマンドの他の便利な例がある場合は、コメントセクションで他の人と共有してみませんか?


Linux
  1. Linux での sa コマンドの例

  2. Linux での ac コマンドの例

  3. Linux での df コマンドの例

  1. Linuxlsコマンドをマスターする

  2. Linuxでのmvコマンド:7つの重要な例

  3. Linux での du コマンドの例

  1. Linuxでのファイルコマンドの基本的な例

  2. Linuxでのddコマンドの5つの実用例

  3. 7 Linux df コマンドの例