Qual è il significato dei seguenti elementi è sulla parte superiore dello script linuxquale sia il significato di questo legame nello script linux
#!/bin/bash
return &> /dev/null
Qual è il significato dei seguenti elementi è sulla parte superiore dello script linuxquale sia il significato di questo legame nello script linux
#!/bin/bash
return &> /dev/null
La riga serve a proteggere gli utenti dall'acquisizione dello script.
Quando lo script viene eseguito (non di origine ma eseguito), lo script passerà alle righe successive fino alla fine del file.
Al momento dello script, lo script restituirà e non farà nulla.
return
deve restituire valore dalla funzione di bash.
Quando viene utilizzato esattamente come nel tuo esempio, ma senza &> /dev/null
, è uso non valido perché return
non appartiene al corpo della funzione bash, e sarebbe stampare:
line 2: return: can only `return' from a function or sourced script
Tuttavia, qualcuno ha deciso di nascondere che il messaggio di errore collegando le uscite a /dev/null
.
In altre parole, tutto questo non ha molto senso.
Grazie. Hai spiegato chiaramente le funzionalità di "return", ma @ user3088572 ha spiegato il motivo per cui viene utilizzato in cima ad alcuni script che è il punto di questa domanda. – mailzyok
Elimina gli output indesiderati del programma. Si prega di controllare this link, le differenze tra >
, 2>
e &>
sono spiegate molto bene là.
quotazioni:
comando &>/dev/null
Questa sintassi reindirizza sia uscita e di errore standard output/dev/null dove è ignorata dalla shell.
Interessante. È un modo valido per impedire agli utenti di procurarsi uno script? – pfnuesel
+1: molto bello sapere. Grazie per questa risposta e all'OP per la domanda! Utile. –