Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

Debian GNU/Linux Reference Guide
Prev Home Next

13.2.5 Condizionali

Ciascun comando ritorna uno stato di uscita che pu� essere utilizzato per le espressioni condizionali:

  • Successo: 0 (Vero)

  • Errore: 1 - 255 (Falso)

Notate che l'utilizzo del valore 0 per "vero" differisce dalle convenzioni usuali in altre aree di programmazione. In aggiunta, `[' � l'equivalente del comando test, che valuta i suoi argomenti fino a `]' come espressione condizionale.

Idiomi condizionali basilari da ricordare sono:

     comando && se_successo_lancia_anche_questo_comando
     comando || se_non_ha_successo_lancia_anche_questo_comando
     
     if [ espressione_condizionale ]; then  
      se_ha_successo_lancia_anche_questo_comando
     else
      se_non_ha_successo_lancia_anche_questo_comando
     fi

Qui, || true era necessario per assicurarsi che lo script non uscisse a questa riga accidentalmente, quando la shell era invocata con l'opzione -e.

Gli operatori per la comparazione dei file nelle espressioni condizionali sono:

     -e file         Vero se file esiste.
     -d file         Vero se file esiste ed � una directory.
     -f file         Vero se file esiste ed � un file regolare.
     -w file         Vero se file esiste ed � scrivibile.
     -x file         Vero se file esiste ed � eseguibile.
     file1 -nt file2 Vero se file1 � pi� recente di file2. (modificato)
     file1 -ot file2 Vero se file1 � pi� vecchio di file2. (modificato)
     file1 -ef file2 Vero se se sono gli stessi numeri di inode e device.

Gli operatori di comparazione delle stringhe nelle espressioni condizionali sono:

          -z str    Vero se la lunghezza di str � zero.
          -n str    Vero se la lunghezza di str � non-zero.
     str1 == str2   Vero se str sono uguali.
     str1 = str2    Vero se str sono uguali.
                    ("=" dovrebbe essere usato al posto di "==", per una stretta
     	       complianza POSIX )
     str1 != str2   Vero se str non sono uguali.
     str1 <  str2   Vero se str1 viene prima di str2 (dipende da locale).
     str1 >  str2   Vero se str1 viene dopo str2 (dipende da locale).

Gli operatori aritmetici di comparazione degli interi nelle espressioni condizionali sono -eq, -ne, -lt, -le, -gt, o -ge.


Debian GNU/Linux Reference Guide
Prev Home Next

 
 
  Published under the terms of the GNU General Public License Design by Interspire