|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2010 Messages : 4 ![]() |
Bonjour à tous,
voilà, je dois mettre au point un script shell qui ajouterait l'extension qui va bien à un grand nombre de fichiers doc et pdf. Et franchement, je ne connais rien à la programmation, je vis un réel cauchemar Si quelqu'un peut m'aider, ce serait vraiment magnifique ! |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : février 2010 Messages : 4 ![]() |
J'ai tenté ceci :
#!/bin/sh for i in `ls -l|awk '{print $8}'` do var=$(file $i |grep -i pdf|awk '{print $2}') if [ "$var" == "PDF" ]; then echo $var ; cp $i $i.pdf; else cp $i $i.doc; echo "pas bon"; fi; done Mais il copie tous les fichiers en mettant l'extension .doc, ca n'a pas l'air de fonctionner pour les pdf. La commande file * |grep -i pdf|awk '{print $2}' me resort pourtant bien PDF. Bouh... |
|
|
00
|
|
|
#3 |
|
Membre éprouvé
![]() Inscription : juillet 2006 Messages : 533 ![]() |
Comment represent tes fichiers doc et pdf? Ils ont des formats bien precis?
|
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : février 2010 Messages : 4 ![]() |
Raaah, ca marche, enfin on dirait, avec :
------------------------- #!/bin/sh for i in `ls -l|awk '{print $8}'` do var=$(file $i |grep -i pdf|awk '{print $2}') if [ "$var" = "PDF" ]; then cp $i $i.pdf; else cp $i $i.doc; fi; done -------------------------- Vous imaginez pas ma joie Merci tout de même |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : février 2010 Messages : 7 ![]() |
Salut tu devrais essayer avec un seul '=' dans le if
tu peux essayer de lancer tes scripts comme ça pour voir la trace d'execution ça aide a débugger |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : février 2010 Messages : 4 ![]() |
Tout à fait, le problème c'était les 2 =
Merci
|
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé
![]() Inscription : février 2008 Messages : 1 897 ![]() |
Non, mais ça_a va_a pas :
Code :
de toute façon, on ne fait pas for item in $(ls) : c'est dégueu', ça oblige à des "circonvolutions" i nu tiles |
||
|
|
00
|
|
|
#8 | |
|
Membre Expert
![]() budget et contrôle de gestion Inscription : décembre 2006 Messages : 865 ![]() |
Salut,
Citation:
__________________
Winnt C'est en Linuxant qu'on devient .... geek ![]() Intel Core i5 750 / 8 Go ram / Hdd 2 To / NVIDIA GeForce GTS 250 1Go sous Gentoo. Dual core E6300 / 2Go ram / Hdd 1 To / Ati 9800XT sous Debian Testing. Atom N330 / 4Go ram / Hdd 5To / intel GMA 950 sous Debian Testing |
|
|
|
00
|
|
|
#9 | ||
|
Membre chevronné
![]() Inscription : septembre 2007 Messages : 685 ![]() |
Disons que Bash est le shell par défaut pour Linux. Donc autant utiliser toute sa puissance plutôt que de se restreindre au shell original. D'où:
Code :
__________________
Un problème bien posé est déjà résolu (H. Bergson). |
||
|
|
00
|
|
|
#10 | |
|
Expert Confirmé
![]() Inscription : février 2008 Messages : 1 897 ![]() |
Citation:
*'y faut quand même écrire le code ![]() ![]()
|
|
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() budget et contrôle de gestion Inscription : décembre 2006 Messages : 865 ![]() |
Salut,
Reprenez moi si je dis une bêtise. A ce que je comprends de ce fil si le fichier contient le terme PDF on lui ajoute l'extension pdf. Et s'il contient le terme DOC on lui ajoute l'extension doc. D'ailleurs la maxime préférée de jmelyn me semble des plus appropriée sur ce fil. Le problème n'ayant pas été des plus clairement exposé. Car à vos scripts je pense que la commande rename se substituerai très facilement. Mais je dis ca je dis rien.
__________________
Winnt C'est en Linuxant qu'on devient .... geek ![]() Intel Core i5 750 / 8 Go ram / Hdd 2 To / NVIDIA GeForce GTS 250 1Go sous Gentoo. Dual core E6300 / 2Go ram / Hdd 1 To / Ati 9800XT sous Debian Testing. Atom N330 / 4Go ram / Hdd 5To / intel GMA 950 sous Debian Testing |
|
|
00
|
|
|
#12 |
|
Invité régulier
![]() Inscription : février 2010 Messages : 7 ![]() |
Salut Winnt ,
Ce n'est pas tout a fait le cas , le type de fichier(Pdf , doc et ODT ).
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com