Non ho usato lo scripting di shell da secoli. Ho cercato on-line per chiedere aiuto, ma non ho trovato guide adeguate ..Problemi di comprensione di uno script di shell semplice
Qui è il codice che sto cercando di capire:
#!/bin/sh
# -*-sh-*-
if gcc $1 &> cmp_out; then
if ! ./a.out &> run_out; then
exit 0; # Success.
fi
fi
exit 1; # Failure.
ciò che è cmp_out, e run_out? Sono questi std_out?
So che &> è un'istruzione di reindirizzamento. Ma non capisco cosa significhi in questa sintassi degli script nel minimo dettaglio.
Sto cercando una panoramica di alto livello su ciò che questo script sta facendo. Se hai bisogno di ulteriori informazioni sul perché sto usando questo script fammi sapere. Includerò di più sul perché.
In breve si tratta di un esempio incluso di debugging delta (//www.st.cs.uni-saarland.de/dd/)
'cmp_out' è l'output della compilazione,' run_out' è l'output dell'esecuzione dell'eseguibile risultante. –
in cui vengono reindirizzati i file in uscita. – John3136
La logica è un po 'divertente: se a.out ha uno stato di uscita diverso da zero, allora questo è successo? –