Risposte:
Puoi ottenere un elenco di processi Python usando pgrep
:
pgrep -lf python
Questo, tuttavia, non elenca l'intera riga di comando. Se hai una versione recente di pgrep
puoi usare -a per fare questo:
pgrep -af python
Altrimenti, puoi usare /proc
:
IFS=" " read -ra pids < <(pgrep -f python)
for pid in "${pids[@]}"; do
printf '%d: ' "$pid"
tr '\0' ' ' < "/proc/$pid/cmdline"
echo
done
Di solito uso ps -fA | grep python
per vedere quali processi sono in esecuzione.
Questo ti darà risultati come i seguenti:
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
Il CMD
vi mostrerà ciò che gli script python che avete in esecuzione, anche se non vi darà la directory dello script.
lsof -p $PID
sarebbe un buon inizio.$PID
può anche essere un elenco di PID delimitati da virgole. Inoltre, saranno esposte tonnellate di dati/proc/$PID/
.