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
また、一致が複数ある場合は、何が起こるかを考慮する必要があります。