2015-08-31 25 views
6

Sto provando a scrivere una semplice funzione nel mio .zshrc che nasconde tutti gli errori (principalmente "Permesso negato") per find.Passaggio di tutti gli argomenti nella funzione zsh

Ora, come posso passare tutti gli argomenti dati chiamando la funzione a find?

function superfind() { 
    echo "Errors are suppressed!" 
    find $(some magic here) 2>/dev/null 
} 

Potrei fare $1 $2 $3 $4 ... ma questo è stupido! Sono sicuro che c'è un modo davvero semplice.

risposta

7

Usa [email protected], si espande a tutti gli argomenti posizionali, ad es .:

superfind() { 
    echo "Errors are suppressed!" 
    find "[email protected]" 2> /dev/null 
} 
+0

supponendo che si voleva far passare tutti, ma il primo argomento? –

+0

@rayandrews: aggiungi un comando 'shift' prima del comando' find'. – Thor

+0

Voglio dire in una situazione come questa: "echo" first arg è: $ 1 e gli argomenti rimanenti sono: $ 2 $ 3 $ 4 $ 5 ... "... non puoi spostarti all'interno dell'eco. Ma conoscendo zsh, lo farò scommetti che c'è un modo. –