Pythonを使用してプロセスのファイル記述子を表示します。

Pythonを使用してプロセスのファイル記述子を表示します。

Pythonスクリプトを使用してLinuxでプロセスの開かれたファイル記述子を表示するには?使ってみよう

readlink /proc/PID/fd/* 

Pythonスクリプトではエラーが発生します。

/bin/sh: 2: /fd/*: not found

子プロセスモジュールでエラーが発生するとは思わない。ファイル記述子を表示できる場合は、それを使用してエラーを削除するにはどうすればよいですか?

パスワード:

import os
p=os.popen("pgrep -x vlc")
q=p.read()
print("Process ID of VLC : ",q)
process= os.popen("readlink /proc/"+str(q)+"/fd/*")
s=process.read()
print(s)

答え1

q、exから末尾の改行文字を削除する必要があります。q = q.strip()

vlcまた、一致が複数ある場合は、何が起こるかを考慮する必要があります。

関連情報