Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[bash] Renomer un fichier qui commence par un tiret?(résolu)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
bouba331
Tux's lil' helper
Tux's lil' helper


Joined: 30 Nov 2004
Posts: 87
Location: Tours (France)

PostPosted: Wed Jan 04, 2006 5:01 pm    Post subject: [bash] Renomer un fichier qui commence par un tiret?(résolu Reply with quote

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
View user's profile Send private message
Trevoke
Advocate
Advocate


Joined: 04 Sep 2004
Posts: 4099
Location: NY, NY

PostPosted: Wed Jan 04, 2006 5:04 pm    Post subject: Reply with quote

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
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Wed Jan 04, 2006 5:07 pm    Post subject: Reply with quote

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
View user's profile Send private message
Trevoke
Advocate
Advocate


Joined: 04 Sep 2004
Posts: 4099
Location: NY, NY

PostPosted: Wed Jan 04, 2006 5:18 pm    Post subject: Reply with quote

guilc : :evil: Je vais faire des cauchemars maintenant.
_________________
Votre moment detente
What is the nature of conflict?
Back to top
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Wed Jan 04, 2006 5:34 pm    Post subject: Reply with quote

Trevoke wrote:
guilc : :evil: Je vais faire des cauchemars maintenant.

Ah bon, on te l'a jamais faite cette blague ? :lol:
_________________
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
View user's profile Send private message
Trevoke
Advocate
Advocate


Joined: 04 Sep 2004
Posts: 4099
Location: NY, NY

PostPosted: Wed Jan 04, 2006 6:01 pm    Post subject: Reply with quote

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
View user's profile Send private message
scout
Veteran
Veteran


Joined: 08 Mar 2003
Posts: 1991
Location: France, Paris en Semaine / Metz le W-E

PostPosted: Wed Jan 04, 2006 6:13 pm    Post subject: Reply with quote

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
View user's profile Send private message
bouba331
Tux's lil' helper
Tux's lil' helper


Joined: 30 Nov 2004
Posts: 87
Location: Tours (France)

PostPosted: Wed Jan 04, 2006 9:52 pm    Post subject: Reply with quote

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
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Wed Jan 04, 2006 10:04 pm    Post subject: Reply with quote

Tiens, je me permet de relever ça :
Quote:
mv test -- -test

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
View user's profile Send private message
bibi.skuk
Guru
Guru


Joined: 01 Aug 2005
Posts: 425

PostPosted: Wed Jan 04, 2006 10:46 pm    Post subject: Reply with quote

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
View user's profile Send private message
guilc
Bodhisattva
Bodhisattva


Joined: 15 Nov 2003
Posts: 3326
Location: Paris - France

PostPosted: Thu Jan 05, 2006 7:27 am    Post subject: Reply with quote

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
View user's profile Send private message
bibi.skuk
Guru
Guru


Joined: 01 Aug 2005
Posts: 425

PostPosted: Thu Jan 05, 2006 8:33 am    Post subject: Reply with quote

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
View user's profile Send private message
yoyo
Bodhisattva
Bodhisattva


Joined: 04 Mar 2003
Posts: 4273
Location: Lyon - France

PostPosted: Thu Jan 05, 2006 9:16 am    Post subject: Reply with quote

MDR !!!
Il existe un outil incroyable pour renommer des fichiers !!! Son nom : rename (fallait aller le chercher loin non :lol: ).
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 !!! :wink:
_________________
La connaissance s'accroît quand on la partage.
JCB
Back to top
View user's profile Send private message
gim
Guru
Guru


Joined: 29 Apr 2003
Posts: 418
Location: milky-way

PostPosted: Thu Jan 05, 2006 12:25 pm    Post subject: Reply with quote

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
View user's profile Send private message
Adrien
Advocate
Advocate


Joined: 13 Jul 2004
Posts: 2326
Location: Bretagne

PostPosted: Thu Jan 05, 2006 12:29 pm    Post subject: Reply with quote

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.... :lol:
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum