Come racchiudere l'output del comando watch?


9

Considera il seguente comando:

watch -d "ps -ef | grep java"

Fornisce il seguente output:

kshitiz  11369 11285  0 Oct13 ?        00:06:02 /usr/lib/jvm/jdk1.7.0_40/jre/bin/java -Djava.awt.headless=true -Didea.version==14.1.2 -Xmx512m -Dfile.e

L'uscita oltre -Dfile.eviene troncata o scorre fuori dallo schermo. Come posso scorrere per vedere l'output o la parola a capo?

Utilizzo foldsenza orologio: inserisci qui la descrizione dell'immagine

Utilizzando foldcon orologio: inserisci qui la descrizione dell'immagine

Risposte:


7

Eseguire il pipe dell'output da piegare per avvolgere l'output ad una larghezza specificata (impostazione predefinita 80):

watch -d "ps -efww | grep '[j]ava' | fold -s"
  • Utilizzare il -wflag di psper output ampio e due volte per output illimitato.
  • fold -s si rompe negli spazi.
  • Notare anche il grepcomando. Ho cambiato javain [j]ava. In questo modo il grepprocesso non corrisponderà a se stesso psnell'output.

1
Anche se fold sembra funzionare bene da solo. Con watchl'output viene ancora tagliato -Dfile.e.
Kshitiz Sharma,

2

Inoltre:

Puoi anche provare a specificare la larghezza; questo farà pieno uso della larghezza dello schermo.

Nel mio caso, quanto segue fornisce un output perfettamente formato. Personalizza il parametro larghezza secondo le dimensioni del monitor / terminale:

watch -d "ps -ef --width 1000 | grep java | grep -v grep  "
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.