| -eq | égalité numérique | if [ "$x" -eq "4" ] |
| -ne | inégalité numérique | if [ "$x" -ne "4" ] |
| -lt | plus petit que | if [ "$x" -lt "4" ] |
| -le | plus petit ou égal à | if [ "$x" -le "4" ] |
| -gt | plus grand que | if [ "$x" -gt "4" ] |
| -ge | plus grand ou égal à | if [ "$test" -ge "4" ] |
| -z | la string est vide | if [ -z "$test" ] |
| -n | la string n'est pas vide | if [ -n "$test" ] |
| = | égalité de chaine (cf. -eq) | if [ "$test" = "bar" ] |
| -nt | fichier plus récent que | if [ "$file1" -nt "$file2" ] |
| -ot | fichier plus ancien que | if [ "$file1" -ot "$file2" ] |
| -e | est-ce-que le fichier existe | if [ -e /etc/hosts ] |
| -d | est un répertoire | if [ -d /bin ] |
| -f | est un fichier | if [ -f /bin/ls ] |
| -L | est un lien | if [ -f /opt/oracle ] |
| -s | est-ce-que le fichier n'est pas vide | if [-s /tmp/test] |
| -r | est ouvert en lecture | if [ -r /bin/ls ] |
| -w | est ouvert en écriture | if [ -w /bin/ls ] |
| -x | est executable | if [ -x /bin/ls ] |
if test 2 -lt 3 then echo "C'est normal." fiif test 2 -gt 3 then echo "C'est absurde." fi
if test -e ~/.profile then echo "~/.profile existe." else echo "~/.profile n'existe pas." fi
if test -d ~/.profile then echo "~/.profile est un répertoire." else echo "~/.profile n'est pas un répertoire." fi
if test -f ~/.profile then echo "~/.profile est un fichier." else echo "~/.profile n'est pas un fichier." fi
if test ~/.exrc -nt ~/.profile then "~/.exrc est plus récent que ~/.profile." fi
| && | et logique | if [ "$test" -ge "0" ] && [ "$test" -le "9"] |
| || | ou logique | if [ "$test" -lt "0" ] || [ "$test" -gt "9" ] (not in Bourne shell) |
| ! | Logical NOT | if [ "$test" != "bar" ] |
[ -f test ] && echo "Le fichier test existe."[ -f test ] || echo "Le fichier test n'existe pas." Le fichier test n'existe pas.
[ ! -f test ] && echo "Le fichier test n'existe pas." Le fichier test n'existe pas.
if [ -f test ] then echo "Le fichier test existe." else continue fi
if [ -f test ] then continue else echo "Le fichier test n'existe pas." fi
if [ ! -f test ] then echo "Le fichier test n'existe pas." else continue fi
| $$ | PID du shell courrant | echo "my PID = $$" | |
| $! | PID de la dernière commande en background | ls & echo "PID of ls = $!" | |
| $? | staus de sortie de la derniere commande | ls | echo "ls returned code $?" |
| $0 | nom de la commande courrrante | echo "I am $0" | |
| $1 | premier argument | echo "My first argument is $1" | |
| $1 | deuxieme argument | echo "My first argument is $2" | |
| $9 | neuvième argument | echo "My ninth argument is $9" | |
| $@ | tous les parametres avec conservation des blancs et des quotes | echo "My arguments are $@" | |
| $ | tous les parametres sans conservation des blancs et des quotes | echo "My arguments are $" |
| définition de fonction | function myfunc() { echo hello } |
| date +"%d/%m/%Y" | 20/06/2013 |
| date +"%d/%m/%y" | 20/06/13 |
| date +"%D" | 06/20/13 |
| date "+%a %D %T" | Thu 06/20/13 09:42:28 |
| date +"%A" | Thursday |
| date +"%a" | Thu |
| date +"%B" | June |
| date +"%B" | June |
| date +"%r" | 09:19:32 AM |
| date +"%u" | 4 |
| date +"%T" | 09:23:48 |
| date +"%H:%M" | 09:24 |
| date +"%H%M" | 0924 |
| date +"%H:%M:%S" | 09:25:04 |
| date +"%H%M%S" | 092530 |
| date +"%I" | 09 |
| date +"%W" | 24 |
| date +"%j" | 171 |
Pour générer des noms de fichiers log
| logname=`date +%Y%m%d%H%M%S`.log | 20130620144817.log |