Mencari tahu dengan parameter mana suatu program dimulai

8

Apakah ada cara untuk mengetahui proses tertentu dengan parameter yang dimulai?

Pieter
sumber

Jawaban:

5

Untuk menemukan argumen apa yang diteruskan ke pdnsd, saya akan lakukan:

[~]> pgrep -l pdnsd
1373 pdnsd
[~]> cat /proc/1373/cmdline 
/usr/sbin/pdnsd--daemon-p/var/run/pdnsd.pid[~]> 

( cmdlineEntri file dipisahkan oleh karakter nol; gunakan sesuatu seperti tr '\0' '\n' </proc/<pid>/cmdlineuntuk melihat lebih banyak keluaran yang terbaca.)

/proc/<pid>/ mengandung banyak informasi.

agn
sumber
Perhatikan bahwa baris perintah dapat ditimpa oleh program itu sendiri; perangkat lunak tertentu melakukan ini untuk alasan yang tidak berbahaya, biasanya untuk memasukkan informasi bermanfaat yang dapat dibaca manusia ke dalam psoutput, tetapi juga alasan memfitnah seperti exploit atau rootkit yang berusaha menyembunyikan diri.
Shadur
Terlalu rumit. Kenapa tidak adil pgrep -a pdnsd?
user1404316
4

Untuk Linux, ps -efmenghasilkan seluruh baris perintah termasuk parameter.

Untuk Solaris, hal-hal bisa menjadi lebih bermasalah tetapi Anda menandai pertanyaan dengan Linux ...

Alain Pannetier
sumber