Aquele operador noop em bash

Muitas pessoas perguntam o caso de uso do operador: no bash e se perguntam se há alguma utilidade para ele.

Aqui está um bom uso do que vale a pena.

Freqüentemente, precisamos de um modo de simulação em scripts bash. Na maioria das vezes, terminamos com testes bastante desagradáveis ​​para evitar a execução de código.

A solução é escrever algo assim:

NOOP=

# parse arguments, and if needed turn on NOOP:
# (other arguments have been ignored)
while :; do
case $1 in
--noop|--dry-run|-n)
NOOP
=:
;;
esac
shift

done

# Now "mark" the dry-run code like this:
$NOOP sudo mkdir
-p /var/log/myapp

Por que funciona? <br>
Se NOOP é igual a “:”, a última linha se torna: <br>
bash : sudo mkdir -p /var/log/myapp
<br>
Como: é resolvido como verdadeiro , o resto da linha não é executado.