Uso dell'operatore NOT negli scrip bash

Non che io sia un programmatore, ma di tanto in tanto uno script shell sono anch’io capace di compilarlo. In queste mie avventure, se così le posso definire, mi sono accorto che manca una funzione logica che renderebbe le operazioni di compilazioni molto più semplice, almeno dal mio punto di vista che sono rimasto al linguaggio BASIC V2 del commodore 64. Si tratta della funzione logica di NOT da utilizzare nelle espressioni dei comandi if then else alif.
Approfittando di un po’ di tempo libero, mi sono messo a leggere più attentamente il manuale della shell bash, di cui non nego di non averci capito molto, ma nell’usare il ! come nella seguente espressione if [ ! -f /…/…/file ]; then, mi permette di ottenere la stessa funzione dell’operatore logico NOT, ovvero: se /…/…/file non è un file, allora si esegue il comando subito dopo then. Senza la funzione di espansione eseguita dall’operatore !, infatti, l’esecuzione del comando then sarebbe eseguita solo se sarebbe vera all’espansione dell’opzione -f. Questo perché l’operatore ! rende vera l’espressione solo se è falsa.
ps. spero di essere stato chiari nel cercare di spiegare quanto detto, a presto augurando a tutti buone feste.

Ciao, prova a dare una letta a questa mini-guida nella sezione “Operatori di Confronto”.