Lister en parallèle - Shell/Batch - Programmation
Marsh Posté le 10-01-2008 à 15:16:03
Linux, en Shell
Pour l'instant pour faire correspondre les lignes j'ai mis un numéro en index de chaque nom et pour chaque ligne de ma 1ere liste je recherche la ligne correspondante dans la seconde liste en fonction du numero
Marsh Posté le 10-01-2008 à 15:29:01
Utilise join pour rassembler les deux fichiers en un seul, puis parcours ce fichier pour faire un mv.
Marsh Posté le 10-01-2008 à 17:27:17
|
une possibilité parmi tant d'autre pour lire ligne par ligne 2 fichiers
Marsh Posté le 10-01-2008 à 18:37:11
Lorsque j'essaie d'afficher avec
while read ligne; do
read <&4;
echo $ligne;
done
celà ne fonctionne pas!
Marsh Posté le 11-01-2008 à 01:57:12
Si j'ai bien compris :
- il y a un fichier texte qui contient une liste de nom (une ligne par nom)
- il y a un répertoire qui contient un certain nombre de fichier
- il faut renomer les fichiers du répertoire (triés par ordre alphabetique) par le nom correspondant dans le fichier
Si c'est le cas, je verrais bien qqch du stype (attention pas testé)
Code :
|
A essayer
Marsh Posté le 11-01-2008 à 23:10:22
Une solution :
|
Marsh Posté le 12-01-2008 à 10:50:48
Merci ArSunik ca fonctionne.
Pour chaque iteration cela prend une ligne du for et une ligne de fichier et les lignes suivantes pour les iterations suivantes. J'etais loin de penser à la ligne done < fichier
Marsh Posté le 09-01-2008 à 18:40:35
Bonjour,
Voilà mon soucis, j'ai une liste de noms dans un fichier texte et un repertoire avec des fichiers.
Comment modifier le nom du 1er fichier du repertoire en le remplaçant par le 1er nom de la liste se trouvant dans le fichier texte.
Est-ce qu'il faut obligatoirement passer par un tableau afin de stocker les nom ou est-il possible de parcourir les 2 listes, listes des fichiers du repertoire et liste des noms, en parallèle?
Merci