Déplacer un fichier depuis une liste

Résolu
SassaM. Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai beau chercher, je ne trouve pas la solution à mon problème.
Je gère une base d'images très importante et je souhaiterais à partir d'une liste excel (ou d'un fichier .txt) déplacer le fichier image, mentionné dans la liste, dans un autre dossier.

Pour être plus claire :
dans un dossier "FDV", j'ai des images nommées "XXXXX.jpg".
Parmi ces images je dois en déplacer certaines dans un autre dossier "AC".
Les images devant être déplacées sont listées sur un fichier excel.

J'ai regardé via Automator mais je n'ai pas trouvé comment amenée ma liste et pour que mes commandes s'enchaînent parfaitement.
Et je ne suis pas assez calée sur le Terminal ni sur AppleScript pour y arriver seule...HELP....

Merci d'avance.
A voir également:

2 réponses

sassa
 
Merci j'ai enfin trouvé un petit script qui fonctionne.
Merci à tous.
1
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
De rien.

Par contre, poster la solution aurait été appréciable ;-\
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Supposons que le fichier /home/toto/toto.txt contienne un nom de fichier par ligne à déplacer depuis /home/toto/FDV vers /home/toto/AC, alors la commande à lancer est :

for x in $(cat /home/toto/toto.txt); do mv /home/toto/FDV/$x /home/toto/AC; done

Bonne chance
-1
Utilisateur anonyme
 
salut,

non! UUOC!
on ne "for boucle" pas sur la sortie d'une commande.
cette sortie peut contenir des espaces sur une même ligne, et la "for boucle" bouclera sur chaque mot de la ligne.
la manière la plus sûre de lire un fichier en shell est une boucle while.

while read -r line; do echo "$line"; done <fichier
pour lire la sortie d'une commande, on pipe cette dernière vers une boucle while, ou y en redirigeant une substitution de processus.
0
mamiemando Messages postés 33782 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Tu as raison, des espaces sur une ligne de fichier fausseront la commande comme tu l'as indiqué, je n'avais pas pensé à ce cas de figure, et ta solution évitera ce genre de problème.
0