Bagaimana cara memeriksa proses tertentu (skrip Python) yang sedang berjalan?


12

Menggunakan perintah 'top' saya bisa melihat 2 skrip python sedang berjalan. Namun, bagaimana cara memeriksa nama atau direktori / lokasi mereka? Saya ingin mengidentifikasi mereka sehingga saya bisa melihat apa yang berjalan dengan baik dan apa yang tidak.


1
lsof -p $PIDakan menjadi awal yang baik. $PIDjuga bisa menjadi daftar PID yang dibatasi koma. Juga, banyak data akan diekspos di /proc/$PID/.
DopeGhoti

Jawaban:


18

Anda bisa mendapatkan daftar proses python menggunakan pgrep:

pgrep -lf python

Namun, ini tidak mencantumkan seluruh baris perintah. Jika Anda memiliki versi terbaru, pgrepAnda dapat menggunakan -a untuk melakukan ini:

pgrep -af python

Jika tidak, Anda dapat menggunakan /proc:

IFS=" " read -ra pids < <(pgrep -f python)
for pid in "${pids[@]}"; do
    printf '%d: ' "$pid"
    tr '\0' ' ' < "/proc/$pid/cmdline"
    echo
done

3

Saya biasanya menggunakan ps -fA | grep pythonuntuk melihat proses apa yang sedang berjalan.

Ini akan memberi Anda hasil seperti berikut:

UID     PID   PPID  C STIME TTY      TIME     BIN            CMD
user    3985  3960  0 19:46 pts/4    00:00:07 path/to/python python foo.py

The CMDakan menunjukkan apa script python yang telah berjalan, meskipun tidak akan memberikan direktori script.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.