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.

giovedì 28 luglio 2011

Eseguire sorgenti Python rapidamente

Ho scritto uno script shell che permette di eseguire script Python comodamente con due click.
E' pensato soprattutto per chi come me programma in Python e necessita durante la programmazione di testare i propri script man mano che scrive

Scarica lo script

E' possibile eseguire lo script Python passandoglielo per parametro, oppure se non riceve input apre la finestra Zenity(wiki in inglese) nella cartella dove sono presenti gli script. Occorre quindi che sia installato Zenity, per farlo digitare da terminale sudo apt-get install zenity oppure trovarlo dal gestore pacchetti.
Il percorso assoluto di questa cartella deve essere immesso dentro lo script nella parte evidenziata dai commenti EDIT ME



ATTENZIONE: Ho modificato lo script shell che esegue script shell. Questo

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.