Code :
while read info do mkdir "$info" if test -f "$info.txt" then while read nom do mkdir "$info"/`echo "$nom" |sed -e "s/;/ /g"` done <"$info.txt" fi done <rep.txt
|
Je lis les lignes situées dans "rep.txt". Donc si la ligne contient "toto" je lis "toto". Je stocke cette ligne dans la variable "info"
Je crée le répertoire dont le nom est dans "info" (donc ici "toto" ).
Si le fichier dont le nom est dans "info" suivi de ".txt" (donc ici "toto.txt" ) existe, alors je lis les lignes situées dans "toto.txt". Donc si la ligne contient "DUPONT;Jean" je lis "DUPONT;Jean". Je stocke ces lignes dans la variable "nom".
Je crée le dossier "$info" ("toto" ) suivi de "/" suivi du nom où je remplace ";" par " " => "toto/DUPONT Jean"
Bref ce bout de code reprend exactement ce que tu as demandé (je cite)
Citation :
j'ai un fichier rep.txt avec des données : ex toto , lp (cela peut etre nimporte quoi)
et j'ai un autre fichier toto.txt avec un nom à l’intérieur : ex DUPONT;Jean
donc je dois vérifier si toto du rep.txt correspond à un fichier toto.txt et si oui créer un répertoire DUPONT JEAN sous le répertoire toto(précédemment créé);
|
Message édité par Sve@r le 31-10-2011 à 15:12:53