web-dev-qa-db-ja.com

「ps -aef | grep $(pwd)」コマンドの意味は何ですか?

このコマンドの意味は何ですか、何をしますか?

ps -aef | grep `pwd`
5
Rakesh KR

ps のmanページから:

   -a              Select all processes except both session leaders (see getsid(2)) and
                   processes not associated with a terminal.

   -f              Do full-format listing. This option can be combined
                   with many other UNIX-style options to add additional
                   columns. It also causes the command arguments to be
                   printed. When used with -L, the NLWP (number of
                   threads) and LWP (thread ID) columns will be added. See
                   the c option, the format keyword args, and the format
                   keyword comm.
   -e              Select all processes. Identical to -A.

grepprint lines matching a patternに使用されます。

それがすること

コマンド

ps -aef | grep `pwd`

ps -aefの出力から、コマンドpwd(現在の作業ディレクトリのパスになります)の出力に一致するすべての行を出力します。

e.g:

saji@geeklap:~$ pwd
/home/saji

saji@geeklap:~$ ps -aef | grep `pwd`
saji      2854  2814  0 09:51 ?        00:00:00 /usr/bin/ssh-agent /usr/bin/gpg-agent --daemon --sh --write-env-file=/home/saji/.gnupg/gpg-agent-info-geeklap /usr/bin/dbus-launch --exit-with-session gnome-session --session=ubuntu
saji      2855  2814  0 09:51 ?        00:00:00 /usr/bin/gpg-agent --daemon --sh --write-env-file=/home/saji/.gnupg/gpg-agent-info-geeklap /usr/bin/dbus-launch --exit-with-session gnome-session --session=ubuntu
saji      2879     1  0 09:51 ?        00:00:00 /usr/lib/gvfs//gvfs-Fuse-daemon -f /home/saji/.gvfs
saji     14242 14148  0 15:26 pts/7    00:00:00 grep --color=auto /home/saji

ご覧のとおり、出力には、現在の作業ディレクトリ(/home/saji)に一致する行が表示されます。

背景情報:
コマンドが$(...)または...にある場合、コマンドが実行され、出力(画面に出力されるもの)がキャッチされ、元の$()の場所に置き換えられますまたは `` string was was。したがって、実際のコマンド実行はgrep pwdです。

詳細については、これを参照してください link 。(この情報について @ minerz029 に感謝します)。

Manページ自体からの詳細な技術的回答については、次のリンクを確認してください。

http://explainshell.com/explain?cmd=ps+-aef+|+grep+%60pwd%6

8
saji89
ps -aef | grep $(pwd)

working directoryに関連付けられているプロセスのリストに関する完全な情報を検索、取得、表示し、そのディレクトリのパスを出力します。

3
Avinash Raj

ps:アクティブなプロセスの選択に関する情報を表示します。 ps -eなど、現在のすべての作業バックグラウンドプロセスを表示するため

-aefここに何があるのか​​理解できない

grep:プロセス内の特定の作業を検索するためのものです。

pwd:作業ディレクトリを印刷します。

便利で意味のあるコマンドだとは思いません。あなたがそれをどのような目的で使用しているか知っていますか。

2
Sukupa91