Workstation online OnWorks Linux e Windows

Logo

Hosting online gratuito per workstation

<Precedenti | Contenuti | Succ.>

Operatori di controllo: un altro modo per ramificarsi

Bash fornisce due operatori di controllo che possono eseguire la ramificazione. Gli operatori && (AND) e || (OR) funzionano come gli operatori logici nel comando composto [[ ]]. Questa è la sintassi:

command1 && command2

e

command1 || command2

È importante capire il comportamento di questi. Con il && operatore, command1 viene eseguito e command2 viene eseguito se, e solo se, command1 ha successo. Con il || operatore, command1 viene eseguito e command2 viene eseguito se, e solo se, command1 non ha successo.

In termini pratici, significa che possiamo fare qualcosa del genere:



[io@linuxbox~]$ mkdir temp && cd temp

[io@linuxbox~]$ mkdir temp && cd temp


Questo creerà una directory denominata Temp.e se ha successo, la directory di lavoro corrente verrà modificata in Temp.. Il secondo comando viene tentato solo se il mkdir com- il comando ha esito positivo. Allo stesso modo, un comando come questo:



[io@linuxbox~]$ [[ -d temp ]] || mkdir temp

[io@linuxbox~]$ [[ -d temp ]] || mkdir temp


verificherà l'esistenza della directory Temp.e solo se il test fallisce, la directory verrà creata. Questo tipo di costrutto è molto utile per gestire gli errori negli script, un argomento che approfondiremo nei capitoli successivi. Ad esempio, potremmo farlo in uno script:


[ -d temp ] || uscita 1

[ -d temp ] || uscita 1


Se lo script richiede la directory Temp.e non esiste, lo script terminerà con uno stato di uscita pari a uno.


Il miglior sistema operativo cloud computing su OnWorks: