esempi - Con Bash Scripting, come posso sopprimere tutti gli output da un comando?



comando cut bash (5)

Come andynormancx post usa questo: (se stai lavorando in un ambiente Unix)

scriptname > /dev/null

oppure puoi usare questo: (se lavori in un ambiente Windows)

scriptname > nul

https://ffff65535.com

Ho uno script bash che esegue un programma con parametri. Questo programma emette uno stato (facendo questo, facendo così ...). Non c'è alcuna opzione per questo programma di essere tranquillo. Come posso evitare che lo script mostri qualcosa?

Sto cercando qualcosa come Windows "echo off".


Dai un'occhiata a questo esempio di The Linux Documentation Project :

3.6 Esempio: file stderr e stdout 2

Questo metterà ogni uscita di un programma in un file. Questo è adatto a volte per le voci di cron, se vuoi che un comando passi in assoluto silenzio.

     rm -f $(find / -name core) &> /dev/null 

Detto questo, puoi usare questo semplice reindirizzamento:

/path/to/command &>/dev/null

Provare

: $(yourcommand)

: è l'abbreviazione di "non fare nulla".

$() è solo il tuo comando.


Qualcosa di simile a

script > /dev/null 2>&1

Ciò impedirà l'output standard e l' output degli errori, reindirizzandoli entrambi su /dev/null .


Un'alternativa che può rientrare in alcune situazioni è assegnare il risultato di un comando a una variabile:

$ DUMMY=`grep root /etc/passwd`
$ echo $?
0
$ DUMMY=`grep r00t /etc/passwd`
$ echo $?
1

Poiché Bash e gli altri interpreti della riga di comando POSIX non considerano le assegnazioni di variabili come un comando, il codice di ritorno del comando corrente viene rispettato.





echo