2017-06-21 7 views
-1

私は、バックグラウンドでプロセスを開始し、そのstdoutstderrをどこかの任意のファイルにリダイレクトします。数ヶ月後、プロセスはまだ実行されており、そのファイルがどこにあるのか忘れてしまいました。私がプロセスのIDを知っていれば、どのように出力を送信する場所をプログラムで決定できますか? LinuxでBash:stderrとstdoutの場所を取得

+1

は、あなただけのファイル名を取得するには、代わりに '' lsの-l'のreadlink'を使用することができます 'lsof'コマンド – 123

答えて

3

、次のコマンドを実行します。

ls -l /proc/PROCESS_ID/fd/1 /proc/PROCESS_ID/fd/2 
+2

を検索します。 – 123

+0

@ 123:ありがとう。あるいは、GNU find: 'find/proc/PROCESS_ID/fd -name '[12]' -printf"%l \ n "' – Cyrus

関連する問題