Jika saya dapat melihat proses berjalan menggunakan ps -e
, bagaimana saya bisa menemukan file yang meluncurkannya?
process
executable
ps
interstar
sumber
sumber
Jawaban:
Di Linux: jika Anda tahu PID, Anda bisa menyimpan file cmdline untuk file itu. Misalnya:
Ini mungkin akan gagal jika biner dipindahkan setelah program dimulai.
Dan tentu saja:
dan:
yang merupakan tautan simbolis ke executable.
sumber
/proc/PID/cmdline
tidak memiliki karakter baris baru, jadi Anda mungkin ingin melakukan sesuatu seperticat /proc/PID/cmdline ; echo ''
.tr '\0' ' ' < /proc/PID/cmdline ; echo ''
Salin id proses dari
ps -e
perintah dan kemudian jalankan yang berikut:sumber
Tak satu pun dari metode (
ls
,lsof
ataucat
) dalam jawaban lain bekerja untuk saya. Bila saya lakukan:Ini adalah pemenang saya ,:
Atau, untuk mendapatkan hanya PID untuk menggunakannya dalam pemrograman:
Diuji pada Kali Linux v1.0.6 (berbasis Debian).
Dibandingkan dengan yang sederhana
ls
, saya harus akui itu bukan solusi yang sangat portabel, tetapi setidaknya itu berfungsi.sumber