Come implementare un'opzione dry-run in uno script bash?
Posso pensare a racchiudere ogni singolo comando in un if e riecheggiare il comando invece di eseguirlo se lo script è in esecuzione con dry-run.
Un altro modo sarebbe quello di definire una funzione e quindi passare ogni chiamata di comando attraverso quella funzione.
Qualcosa di simile a:
function _run () {
if [[ "$DRY_RUN" ]]; then
echo $@
else
$@
fi
}
`_run mv /tmp/file /tmp/file2`
`DRY_RUN=true _run mv /tmp/file /tmp/file2`
È solo sbagliato e c'è un modo molto migliore di farlo?
_run()
funzione, a volte con 'set -xv', ma mi piacerebbe un modo migliore.