PIDを使用してサーバー上で実行されているbashスクリプトのファイル名/場所を検索する

PIDを使用してサーバー上で実行されているbashスクリプトのファイル名/場所を検索する

私が働いていた新しい会社のトレーニングの練習で、友人は私のWebサーバーにスクリプトを配置し( ͡° ͜ʖ ͡°)ました。

使用:ps -ef実行中のスクリプトが見つかりました。

root     20071     1  0 Oct07 ?        00:03:04 bash

私は実行しようとしています:

ps -p 20071 -o comm=

どの出力=bash

私も試しましたl -la /proc/20071/exe

どの出力=

lrwxrwxrwx 1 root root 0 Oct  7 21:03 /proc/20071/exe -> /bin/bash*

スクリプトがあると思われる場所にありますが、そのフォルダに参照が表示されないusr/bin/ため、分離できないようです。bash

私は最初にCLIに触れたので、何か明らかなものが欠けていることを知っています。スクリプト自体がbashと呼ばれますか、それとも単に表示タイプですか?スクリプトが.shファイルであると仮定しますが、わかりません。

PIDや他の方法を使用して実行中のスクリプトと場所を確認する方法はありますか?

ベストアンサー1

これはbashスクリプトなので、プロセスは実行中です/bin/bash。これは正常です。

スクリプトは bash プロセスによって開きます。このプロセスで開かれたファイルを使用または一覧ls -l /proc/20071/fd表示します。lsof -p 20071デフォルトでは、ファイル記述子255でスクリプトを見つけることができる。

cat /proc/20071/fd/255

(これが端末に音声記号と発音区別符号が現れる原因なのか、そしてそれがどのように現れるかは現在としては十分な情報がない別の質問です。)

おすすめ記事