Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/02/2008, 06h40   #1
Invité de passage
 
Inscription : novembre 2007
Messages : 17
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 17
Points : 0
Points : 0
Par défaut concatener avec commande mv

Bonjour.

Je veux savoir si je peux avec la commande mv deplacer des fichiers en les concatenant, si wi c'est avec quelle option j ai fait man de mv mais j ai pas trouver.
Je veux par exemple deplacer un fichier sssss du repertoire X vers le repertoire Y qui contien deja un fichier du meme nom.
Donc je veux pas le supprimer et pas le renommer juste concatener
MErci
youkisall est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2008, 09h32   #2
Membre Expert
 
Avatar de becket
 
Frédéric Brugmans
Informaticien multitâche
Inscription : février 2005
Messages : 661
Détails du profil
Informations personnelles :
Nom : Frédéric Brugmans

Informations professionnelles :
Activité : Informaticien multitâche

Informations forums :
Inscription : février 2005
Messages : 661
Points : 1 196
Points : 1 196
Pas avec cat mais avec cat

cat fichier1 >> /repertoire2/fichier1
becket est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2008, 12h00   #3
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 502
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 502
Points : 9 685
Points : 9 685
Bonjour,

mv ne permet pas de faire ce que tu veux. La seule solution te garantissant un résultat systématique est la suivante :

Code :
1
2
3
Vérifier la présence du fichier destination
Si présence, cat fichier1 >> /repertoire2/fichier1
sinon, mv fichier1 /repertoire2/fichier1
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2008, 14h15   #4
Expert Confirmé Sénior
 
Inscription : janvier 2007
Messages : 8 745
Détails du profil
Informations personnelles :
Âge : 54

Informations forums :
Inscription : janvier 2007
Messages : 8 745
Points : 9 982
Points : 9 982
cat ne crée pas quand le fichier n'existe pas ?? il me semblait que si..
__________________
"Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

Consultant indépendant.
Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
C, Fortran, XWindow/Motif, Java

Je ne réponds pas aux MP techniques
souviron34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2008, 10h11   #5
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 502
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 502
Points : 9 685
Points : 9 685
Bonjour,

Citation:
Envoyé par souviron34 Voir le message
cat ne crée pas quand le fichier n'existe pas ?? il me semblait que si..
Effectivement, la commande cat crée un fichier si celui-ci n'existe pas. Par contre, mv ne propose pas de déplacer un fichier en le concaténant à la fin d'un autre, d'où l'algorithme suivant (bien meilleur que le précédent) :

Code :
1
2
3
4
5
6
 
Si présence_fichier_destination
     cat fichier1 >> /repertoire2/fichier1
     /bin/rm -f ./fichier1
sinon
     mv fichier1 /repertoire2/fichier1
Attention :
  • mv sur un même filesystem conserve le numéro d'inode
  • mv sur deux filesystem différents ne conserve pas le numéro d'inode
  • cat redirigé dans un fichier ne conserve pas le numéro d'inode
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h48.


 
 
 
 
Partenaires

Hébergement Web