Bash

De Admin -- TALEVAS.
(Différences entre les versions)
(SED)
(les commandes de test)
Ligne 23 : Ligne 23 :
 
  if [ -z "$TEST" ] ; then echo ok; else echo plouf; fi
 
  if [ -z "$TEST" ] ; then echo ok; else echo plouf; fi
 
Retourne OK si le user n'existe pas ou PLOUFF s'il existe
 
Retourne OK si le user n'existe pas ou PLOUFF s'il existe
 +
 +
`ARG1 -eq ARG2'
 +
`ARG1 -ne ARG2'
 +
`ARG1 -lt ARG2'
 +
`ARG1 -le ARG2'
 +
`ARG1 -gt ARG2'
 +
`ARG1 -ge ARG2'
 +
 +
These arithmetic binary operators return true if ARG1 is equal,
 +
not-equal, less-than, less-than-or-equal, greater-than, or
 +
greater-than-or-equal than ARG2, respectively.
 +
  
 
tiré du manuel =>
 
tiré du manuel =>
Ligne 35 : Ligne 47 :
  
 
----
 
----
 
  
 
== SED ==
 
== SED ==

Version du 1 février 2008 à 12:46

les commandes de test

Tester un fichier (de type répertoire) dans l'exemple suivant =>

if [ -d /home/talevas ]; then echo test; fi
if  test -d /home/talevas ; then echo ok; else echo plouf; fi
if [ -d /home/talevas ]; then echo ok; else echo plouf; fi


Tester une chaine de caractère =>

Ici on test un user existe dans /etc/pasword.

grep ${USER} /etc/passwd

cette commande va nous retourne un STRING ou pas selon que le suer existe ou non

TEST=grep ${USER} /etc/passwd
if test -n "$TEST" ; then echo ok; else echo plouf; fi
if [ -n "$TEST" ] ; then echo ok; else echo plouf; fi

Retourne OK si le user existe ou PLOUFF s'il n'existe pas

TEST=grep ${USER} /etc/passwd
if test -z "$TEST" ; then echo ok; else echo plouf; fi
if [ -z "$TEST" ] ; then echo ok; else echo plouf; fi

Retourne OK si le user n'existe pas ou PLOUFF s'il existe

`ARG1 -eq ARG2'
`ARG1 -ne ARG2'
`ARG1 -lt ARG2'
`ARG1 -le ARG2'
`ARG1 -gt ARG2'
`ARG1 -ge ARG2'

These arithmetic binary operators return true if ARG1 is equal, not-equal, less-than, less-than-or-equal, greater-than, or greater-than-or-equal than ARG2, respectively.


tiré du manuel =>

`-z STRING'
    True if the length of STRING is zero.
`-n STRING'
`STRING'
    True if the length of STRING is nonzero.



SED

[1]

sed -i s/avant/après/g file.txt
 -i[SUFFIX], --in-place[=SUFFIX]

edit files in place (makes backup if extension supplied)


sed -i 3{s/\[\[:alnum:\]\]/t/g} test.fr.vhost
3 => 3eme ligne
{ ce qu'on y applique }
sed -i 3{s/[[:alnum:]]*^/$date/g} test.fr.vhost
[[:alnum:]]*^ => tout les alphanumériques et n'importe quoi ensuite.



EXPR

[2]

expr substr $VALUE 9 2
expr length $VALUE
if [ `expr length $VALUE` -lt "2" ]