systemx

Aller au contenu | Aller au menu | Aller à la recherche

Sous-catégories

jeudi, juin 4 2009

Evaluation d'une variable faite d'une variable

Problème récurent en shell. Comment évaluer une variable faite avec un nom de variable.
Exemple : Si A = toto et B=A Je veux afficher la valeur de la variable A en passant par B (en super shell ce serait $$B mais ca marche pas !). Solution :
script $ A=toto
script $ B=A
script $ eval echo \$$B
toto

vendredi, avril 3 2009

Espace et traitement dans les shell

Traitement des fichiers avec espace dans le nom dans un shell type sh/bash/ksh :
find . -type d -print | grep -v '^.$'  | while read D  ; 
do 
cd "$D" 
mv * .. 
cd ..
done
Seul le read permet d'ensuite traiter les fichiers entre quote qui garde bien le nom avec espace et autres caractères.

vendredi, mars 6 2009

Memo vi

  1. Effacer les lignes qui match un pattern
  2. : g/pattern/d
    g! est pour ce qui ne match pas pattern (:g/^$/ d efface les lignes vides)