[Shell Unix] que fait un "mv *"

que fait un "mv *" [Shell Unix] - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 12-10-2007 à 09:17:51    

Bonjour à tous,
 
hier j'ai tapé la commande "mv *" par accident (j'ai tappé entrée alors que j'avais pas tapé la suite de ma commande)
j'étais dans un répertoire qui contenait 2 fichiers (de taille identique) et il ne m'en reste plus qu'un.
 
Que s'est-il passé ?
 
Merci

Reply

Marsh Posté le 12-10-2007 à 09:17:51   

Reply

Marsh Posté le 12-10-2007 à 09:22:16    

[:transparency]

 

Pour avoir l'explication complète de la commande -> man mv

 

Sinon, elle permet de déplacer un fichier et/ou un répertoire dans un autre répertoire et/ou de renommer ce fichier/répertoire.
Mais techniquement, "mv *" aurait dû planter en te disant qu'il manquait quelque chose [:mouais]

 

Tu connais le nom du fichier qui manque ?

Message cité 1 fois
Message édité par wedgeant le 12-10-2007 à 09:22:32

---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 12-10-2007 à 09:33:58    

Si ton rep contenait deux fichiers, il a écrasé le second avec le premier.
Si ton rep avait contenu 3 fichiers, tu aurais eu une erreur, pas de bol.

Reply

Marsh Posté le 12-10-2007 à 10:25:53    

matafan a écrit :

Si ton rep contenait deux fichiers, il a écrasé le second avec le premier.
Si ton rep avait contenu 3 fichiers, tu aurais eu une erreur, pas de bol.


 
yep  :jap:  
avec 3 files, mv * => mv tata titi toto => on peut pas vouloir copier 2 fichiers (tata titi) dans un seul (toto) => erreur
avec 2 files, mv * => mv tata titi => on veut écraser titi => gogogo (sauf si alias mv='mv -i', là tu aurais un "mv: overwrite `titi'?" )


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
Reply

Marsh Posté le 12-10-2007 à 11:59:30    

move comme un majorite des commandes, c'est un bete acronyme, aussi cd: change directory :)

Message cité 1 fois
Message édité par Ik12 le 12-10-2007 à 11:59:44
Reply

Marsh Posté le 12-10-2007 à 13:05:23    

Ik12 a écrit :

move comme un majorite des commandes, c'est un bete acronyme, aussi cd: change directory :)


ou chmod: charge moi darling :love:

Reply

Marsh Posté le 12-10-2007 à 15:43:38    

matafan a écrit :

Si ton rep contenait deux fichiers, il a écrasé le second avec le premier.
Si ton rep avait contenu 3 fichiers, tu aurais eu une erreur, pas de bol.


C'est bien ce que j'imaginais !
Je voulais être sûr que mon fichier 2 (survivant) corresponde en réalité au fichier 1.
 
Pour la perte aucune importance.
 
Merci à tous en tous cas ! Même si j'en ai peut-être trop eu :lol: mieux vaux trop que pas assez !

Reply

Marsh Posté le 12-10-2007 à 15:48:45    

wedgeant a écrit :

[:transparency]
 
Pour avoir l'explication complète de la commande -> man mv
 
Sinon, elle permet de déplacer un fichier et/ou un répertoire dans un autre répertoire et/ou de renommer ce fichier/répertoire.
Mais techniquement, "mv *" aurait dû planter en te disant qu'il manquait quelque chose [:mouais]
 
Tu connais le nom du fichier qui manque ?


 :non:  
Le * est géré par le bash, pas par le programme appelé.
Donc ici, le bash remplace * par ces deux fichiers, appelle mv avec ces deux noms de fichier comme argument, donc mv est content :jap:


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 12-10-2007 à 16:45:13    

alias mv='mv --interactive'


---------------
--
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed