どのスクリプトbashが実行されているのか、どうすればわかりますか?

どのスクリプトbashが実行されているのか、どうすればわかりますか?

プロセスが実行されているスクリプトをどのように確認しますか?私が使用するとき:

ps -u user

次の結果が表示されます。

10005194 26932  0.0  0.0 112700  1544 ?        Ss   Jun03   0:00 -bash
10005194 27117  0.0  0.0 112700  1528 ?        Ss   Apr24   0:00 -bash
10005194 27164  0.0  0.0 112700  2040 ?        Ss   Jun06   0:00 -bash
10005194 27404  0.0  0.0 112700  1544 ?        Ss   May27   0:00 -bash
10005194 27484  0.0  0.0 112700  1528 ?        Ss   Apr23   0:00 -bash
10005194 27531  0.0  0.0 112700  1528 ?        Ss   May22   0:00 -bash
...

何百行もあります。私はこのユーザーが多くのスクリプトを実行していることを知っていますが、スレッドを占めるスクリプトの範囲を絞り込みたいと思います。これを行う方法はありますか?

ベストアンサー1

w(「広い」という意味)オプションを使用してください。

man ps(検索)からwide

w 広い出力。無限の幅を得るには、このオプションを2回使用します。

例えばps ww -u cas:

$ ps ww -U cas | grep bash
 1350 pts/0    Ss     0:00 -bash
18345 pts/34   S      0:00 /bin/bash /home/cas/bin/myscript.sh
21293 pts/34   Ss+    0:00 bash

これは-bashログインシェルです。

plainbashはログインではなく対話型シェルです。 ttypts/34は同じで、bashシェルの親シェル(または遠い祖父母)であることがわかりますmyscript.sh

/usr/env/bin bashを使用すると、どのスクリプトが実行されているかを判断できません。代わりに、bash実行可能ファイルが実行されているコンピュータに適しているかどうかを正確に指定する必要があります。

おすすめ記事