Quando uno script viene lanciato dal prompt dei comandi, la shell genererà un sottoprocesso per quello script. Voglio mostrare quella relazione tra il processo a livello terminale e i suoi figli usando psun output in stile albero.
Come posso fare questo?
Quello che ho provato finora
file: script.sh
#!/bin/bash
ps -f -p$1
Quindi invoco lo script dalla riga di comando passando l'id del processo della shell del terminale:
$ ./script.sh $$
Quello che voglio è qualcosa del genere
- processo di shell di livello superiore (terminale)
- ./script.sh
- processo per il
pscomando stesso
USER PID [..]
ubuntu 123 -bash
ubuntu 1234 \_ bash ./script.sh
ubuntu 12345 \_ ps auxf
quello che sto ottenendo è:
PID TTY STAT TIME COMMAND
14492 pts/24 Ss 0:00 -bash
pstreee non sono riuscito a produrre output significativi, penso che non abbia pstree $$prodotto bash--pstreeesattamente quello che stavo cercando.
ps, quindi, cos'altro ti aspetti di vedere tranne pstree?
pstree -p $$? Oppure, se si vuole di più della linea di comando show, pstree -pa $$. Oppure, se si desidera visualizzare tutti i processi principali che salgono, pstree -psa $$.
pstree?