Tutto il blog è stato spostato all'indirizzo
http://pierprogramm.altervista.org/wordpress/


I post memorizzati qui non verranno rimossi ma saranno obsoleti. Questo blog non sarà più aggiornato.

mercoledì 13 luglio 2011

Operatori (confronto,logici) linguaggio Bash

Tra i linguaggi che ho (e sto) studiato il linguaggio Bash e' sicuramente il piu' difficile da comprendere quando si parla di operatori di confronto e logici. Specialmente perche' si usano operatori differenti per stringhe e interi.
Questa vuole essere una specie di appendice per chi, gia' un po' esperto, sta imparando a programmare in questo linguaggio.


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.

Nessun commento:

Posta un commento