linguaggio Bash - Operatori di confronto e logici (si usano operatori differenti per stringhe e interi) Operatori di Confronto (STRINGHE) -n : Verifica che la stringa sia di lunghezza maggiore di zero -z : Verifica che la stringa abbia lunghezza zero = : Verifica che due stringhe siano uguali != : Verifica che due stringhe siano diverse < : Verifica che la prima stringa sia lessicograficamente minore della seconda > : Verifica che la prima stringa sia lessicograficamente maggiore della seconda Operatori Logici (STRINGHE) ! : Operatore di negazione, inverte il valore logico dell'espressione al quale viene applicato. !(vero) = falso -a : Operatore AND. Ritorna vero se entrambi gli argomenti passati lo sono. -o : Operatore OR. Ritorna vero se almeno uno degli argomenti lo e'. Operatori di Confronto (NUMERI) op1 -eq op2 : Vero se gli operandi sono uguali. op1 -ne op2 : Vero se gli operandi sono differenti. op1 -lt op2 : Vero se il primo operando e' inferiore al secondo. op1 -le op2 : Vero se il primo operando e' inferiore o uguale al secondo. op1 -gt op2 : Vero se il primo operando e' maggiore del secondo. op1 -ge op2 : Vero se il primo operando e' maggiore o uguale al secondo. Operatori Logici (NUMERI) ! espressione : Inverte il risultato logico dell’espressione. espressione -a espressione : Vero se entrambe le espressioni danno un risultato Vero. espressione -o espressione : Vero se almeno un’espressione dà un risultato Vero. Operatori (FILE) -e file : Vero se il file esiste ed e' di qualunque tipo. -b file : Vero se il file esiste ed e' un dispositivo a blocchi. -c file : Vero se il file esiste ed e' un dispositivo a caratteri. -d file : Vero se il file esiste ed e' una directory. -f file : Vero se il file esiste ed e' un file normale. -L file : Vero se il file esiste ed e' un collegamento simbolico. -p file : Vero se il file esiste ed e' una pipe con nome. -S file : Vero se il file esiste ed e' un socket. -t : Vero se lo standard output e' aperto su un terminale. Permessi (FILE) -g file : Vero se il file esiste ed e' impostato il suo bit SGID. -u file : Vero se il file esiste ed e' impostato il suo bit SUID. -k file : Vero se il file ha il bit Sticky attivo. -r file : Vero se il file esiste ed e' leggibile. -w file : Vero se il file esiste ed e' scrivibile. -x file : Vero se il file esiste ed e' eseguibile. -O file : Vero se il file esiste e appartiene all’UID efficace dell’utente attuale. -G file : Vero se il file esiste e appartiene al GID efficace dell’utente attuale. Altri operatori (FILE) -s file : Vero se il file esiste e ha una dimensione maggiore di zero. file1 -nt file2 : Vero se il primo file ha la data di modifica più recente. file1 -ot file2 : Vero se il primo file ha la data di modifica più vecchia. file1 -et file2 : Vero se i due nomi corrispondono allo stesso inode.