View previous topic :: View next topic |
Author |
Message |
bouba331 Tux's lil' helper
Joined: 30 Nov 2004 Posts: 87 Location: Tours (France)
|
Posted: Wed Jan 04, 2006 5:01 pm Post subject: [bash] Renomer un fichier qui commence par un tiret?(résolu |
|
|
Bonjour, c'est sans doute une question bidon, mais je n'ai pas trouvé de réponses satisfaisante sur le net. Voilà, j'ai télécharger des fichiers avec aMule, certains commcent par un tiret, impossible de les renommer avec la commande mv qui me renvoi ceci.
Code: |
baptiste@localhost ~/.xMule/Incoming $ mv ---10\ -\ Isaac\ Albéniz\ -\ Torre\ Bermeja.mp3 10\ -\ Isaac\ Albéniz\ -\ Torre\ Bermeja.mp3
mv: option non reconnue « ---10 - Isaac Albéniz - Torre Bermeja.mp3 »
Pour en savoir davantage, faites: « mv --help ».
|
J'ai regardé dans l'aider de la commande mv et aucune option n'est présente pour résoudre ce problème. J'ai donc écris un petit prog en C qui résoud le problème.
Code: |
int main(int argc, char** argv) {
if(argc == 3){
if(rename(argv[1], argv[2]) != 0)
perror("Erreur à la copie");
}else
printf("Usage: renomer SRC DEST\n");
}
|
Je pense qu'il doit bien y avoir une autre solution que çà! (avec une commande autre que mv peut-être ou bien des caractères spéciaux, j'ai déjà essayer avec " et '), vous avez une idée ?
Merci
Bouba331
Last edited by bouba331 on Wed Jan 04, 2006 9:53 pm; edited 1 time in total |
|
Back to top |
|
|
Trevoke Advocate
Joined: 04 Sep 2004 Posts: 4099 Location: NY, NY
|
Posted: Wed Jan 04, 2006 5:04 pm Post subject: |
|
|
si le fichier s'appelle -dumb
Tu peux juste faire :
mv \-dumb dumb _________________ Votre moment detente
What is the nature of conflict? |
|
Back to top |
|
|
guilc Bodhisattva
Joined: 15 Nov 2003 Posts: 3326 Location: Paris - France
|
Posted: Wed Jan 04, 2006 5:07 pm Post subject: |
|
|
ou encore :
mv -- -dumb dumb
(ou comment connaitre toutes les méthodes pour supprimer un fichier nommé "-rf *" _________________ Merci de respecter les règles du forum.
Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing |
|
Back to top |
|
|
Trevoke Advocate
Joined: 04 Sep 2004 Posts: 4099 Location: NY, NY
|
Posted: Wed Jan 04, 2006 5:18 pm Post subject: |
|
|
guilc : Je vais faire des cauchemars maintenant. _________________ Votre moment detente
What is the nature of conflict? |
|
Back to top |
|
|
guilc Bodhisattva
Joined: 15 Nov 2003 Posts: 3326 Location: Paris - France
|
Posted: Wed Jan 04, 2006 5:34 pm Post subject: |
|
|
Trevoke wrote: | guilc : Je vais faire des cauchemars maintenant. |
Ah bon, on te l'a jamais faite cette blague ? _________________ Merci de respecter les règles du forum.
Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing |
|
Back to top |
|
|
Trevoke Advocate
Joined: 04 Sep 2004 Posts: 4099 Location: NY, NY
|
Posted: Wed Jan 04, 2006 6:01 pm Post subject: |
|
|
Non, je fais gaffe a qui a le droit de toucher a mon ordi _________________ Votre moment detente
What is the nature of conflict? |
|
Back to top |
|
|
scout Veteran
Joined: 08 Mar 2003 Posts: 1991 Location: France, Paris en Semaine / Metz le W-E
|
Posted: Wed Jan 04, 2006 6:13 pm Post subject: |
|
|
derniere technique: mettre ./ devant le nom du fichier (utile aussi pour vim pour éditer des fichiers qui commencent par des + ) _________________ http://petition.eurolinux.org/ - Petition against ePatents
L'essence de la finesse |
|
Back to top |
|
|
bouba331 Tux's lil' helper
Joined: 30 Nov 2004 Posts: 87 Location: Tours (France)
|
Posted: Wed Jan 04, 2006 9:52 pm Post subject: |
|
|
Cool, merci pour toutes vos réponses, par contre seul 2 méthodes des 3 que vous m'avez indiqué fonctionne. La méthode avec le \ ne marchent pas.
Code: |
$ mv \-test test
mv: accès de `est': Aucun fichier ou répertoire de ce type
$ mv ./-test test
$ mv test -- -test
$
|
Thanks.
Bouba331 |
|
Back to top |
|
|
guilc Bodhisattva
Joined: 15 Nov 2003 Posts: 3326 Location: Paris - France
|
Posted: Wed Jan 04, 2006 10:04 pm Post subject: |
|
|
Tiens, je me permet de relever ça :
je vois que tu as mis -- après test et avant -test
En fait, tu peux le mettre avant test aussi (mv -- test -test)
L'explication exacte de la signification de ce '--' : ce caractère indique que TOUT ce qui suit n'est pas un option.
Donc "mv -i -- test -test" marchera et mv prendra bien en compte l'option -i, mais "mv -- -i test -test" ne marchera pas, l'option -i ne sera pas prise en compte, mais sera considérée comme un nom de fichier (voir man bash).
Si ton shell n'est pas bash, ça ne marchera donc pas forcément. Je crois que c'est aussi géré par zsh cependant _________________ Merci de respecter les règles du forum.
Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing |
|
Back to top |
|
|
bibi.skuk Guru
Joined: 01 Aug 2005 Posts: 425
|
Posted: Wed Jan 04, 2006 10:46 pm Post subject: |
|
|
guilc wrote: |
Si ton shell n'est pas bash, ça ne marchera donc pas forcément. Je crois que c'est aussi géré par zsh cependant |
Pas besoin de bash tout le temps... ça fait parti des options gnu de cp/mv/etc |
|
Back to top |
|
|
guilc Bodhisattva
Joined: 15 Nov 2003 Posts: 3326 Location: Paris - France
|
Posted: Thu Jan 05, 2006 7:27 am Post subject: |
|
|
bibi.skuk wrote: | guilc wrote: |
Si ton shell n'est pas bash, ça ne marchera donc pas forcément. Je crois que c'est aussi géré par zsh cependant |
Pas besoin de bash tout le temps... ça fait parti des options gnu de cp/mv/etc |
Certes, mais "--" ne marche pas qu'avec les outils gnu, c'est généralisable a n'importe quel programme n'ayant pas cette option nativement grace a bash (man bash ligne 39-40, j'y tiens ) _________________ Merci de respecter les règles du forum.
Mon site perso : https://www.xwing.info
Mon PORTDIR_OVERLAY : https://gentoo.xwing.info ou layman -a xwing |
|
Back to top |
|
|
bibi.skuk Guru
Joined: 01 Aug 2005 Posts: 425
|
Posted: Thu Jan 05, 2006 8:33 am Post subject: |
|
|
guilc wrote: | bibi.skuk wrote: | Pas besoin de bash tout le temps... ça fait parti des options gnu de cp/mv/etc |
Certes, mais "--" ne marche pas qu'avec les outils gnu, c'est généralisable a n'importe quel programme n'ayant pas cette option nativement grace a bash (man bash ligne 39-40, j'y tiens ) |
okok pas de problemes... |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Thu Jan 05, 2006 9:16 am Post subject: |
|
|
MDR !!!
Il existe un outil incroyable pour renommer des fichiers !!! Son nom : rename (fallait aller le chercher loin non ).
Code: | $ ll
total 1,5K
drwxr-xr-x 2 yoyo users 7 jan 5 10:13 .
drwxr-xr-x 12 yoyo users 15 jan 5 10:12 ..
-rw-r--r-- 1 yoyo users 0 jan 5 10:12 -10test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 -11test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 -12test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 -13test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 -14test
$ rename - "" -1* <------------------------------- ÇA C'EST DU SCRIPT !!!
$ ll
total 1,5K
drwxr-xr-x 2 yoyo users 7 jan 5 10:13 .
drwxr-xr-x 12 yoyo users 15 jan 5 10:12 ..
-rw-r--r-- 1 yoyo users 0 jan 5 10:12 10test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 11test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 12test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 13test
-rw-r--r-- 1 yoyo users 0 jan 5 10:13 14test
|
Enjoy !!! _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
gim Guru
Joined: 29 Apr 2003 Posts: 418 Location: milky-way
|
Posted: Thu Jan 05, 2006 12:25 pm Post subject: |
|
|
guilc wrote: | Certes, mais "--" ne marche pas qu'avec les outils gnu, c'est généralisable a n'importe quel programme n'ayant pas cette option nativement grace a bash (man bash ligne 39-40, j'y tiens ) |
Non, ce serait plus fort que le roquefort ça (comprendre: c'est pas possible). Dans man bash ligne 39-40 c'est des options de set dont il est question. (même si c'est sûrement pareil pour toutes les built-in commands (mais pas plus)).
edit: hum, c'est pas des options de set set, mais des options de bash lui même dont il est question. (mais bon c'est pas très important)
Last edited by gim on Thu Jan 05, 2006 12:30 pm; edited 1 time in total |
|
Back to top |
|
|
Adrien Advocate
Joined: 13 Jul 2004 Posts: 2326 Location: Bretagne
|
Posted: Thu Jan 05, 2006 12:29 pm Post subject: |
|
|
guilc wrote: | (ou comment connaitre toutes les m�thodes pour supprimer un fichier nomm� "-rf *" |
Ca me rappelle une blague qui avait mal tourné une fois sur le forum.... |
|
Back to top |
|
|
|