あるディレクトリから開始するように指示されたシミュレーションを実行していますが、どのディレクトリからシミュレーションを実行したか覚えていません。シミュレーションの実行にはPythonを使用しているので、
ps aux | grep PID
実行中のプログラムが配置されている場所のみを表示します。 (/usr/bin/python) ただし、実行中のファイルが配置されている最初のポイントから、コマンドがどこで操作されるかを知りたいのです。
役に立つコメントがあれば、ぜひお願いします!
ありがとう :)
答え1
history
実際にどのコマンドを使用したかを確認するには、 コマンドを使用することをお勧めします。
答え2
Python スクリプトのパスを確認するには、通常、次のようにしますps
(w
必要に応じて、wide オプションを使用します)。
~% ps ugxw | grep python
romano 2136 0.0 0.2 10524 4132 ? S 09:13 0:00 python /home/romano/software/wallpap/bg_slideshow.py
romano 5839 0.0 0.0 4440 832 pts/1 S+ 10:00 0:00 grep python
たとえば、プロセス2136はスクリプトです/home/romano/software/wallpap/bg_slideshow.py
。プロセスの作業ディレクトリがどれであるかを知りたい場合は、次のようにします。
~% ls -l /proc/2136/cwd
lrwxrwxrwx 1 romano romano 0 Nov 11 10:04 /proc/2136/cwd -> /home/romano
プロセスは/home/romano
現在のディレクトリとして実行されています。
ファイルには、/proc/2136/cmdline
完全なコマンドライン仕様が含まれています。これは、 で見られるものps
と同じですが、コマンドと引数は0値のバイトで区切られています(スペースを保持するため)。ターミナルで次のように表示できます。
% cat /proc/2136/cmdline | tr "\0" " "
python /home/romano/software/wallpap/bg_slideshow.py %
ここで、「tr」は見つかった「nul」文字ごとにスペースを出力します。(末尾の誤った % は、ファイルが改行文字で終了していないために発生します)。
/proc ファイルシステムは本当に便利なツールです --- 完全なドキュメントは少し「難しい」ですが、リンクがあると便利なことがよくあります。https://www.kernel.org/doc/Documentation/filesystems/proc.txt
答え3
コマンドを使用しますwhich
。たとえば、which ifconfig
ifconfig コマンドの場所を出力します。