Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4163 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  copier tous les fichiers d'un repertoire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

copier tous les fichiers d'un repertoire

n°1681866
romainr
Posté le 05-02-2008 à 11:06:41  profilanswer
 

Bonjour,
 
Je vous explique mon probléme, je voudrais grâce à un programme en shell ouvrir tous les fichiers d'un repertoire et les copiers 1 par 1 dans un fichier d'un nom différent.
Par exemple avoir comme fichiers dans le repertoire:
 
simu_20GHz.ri copié dans resultat20GHz.txt
simu_19GHz.ri copié dans resultat19GHz.txt
.....
 
pourriez vous m'aider car je ne vois pas comment faire?
Merci d'avance

mood
Publicité
Posté le 05-02-2008 à 11:06:41  profilanswer
 

n°1681869
Elmoricq
Modérateur
Posté le 05-02-2008 à 11:09:57  profilanswer
 

T'as décidé d'abandonner l'idée de le faire en C ? [:el g]

 

En ksh ou en bash :

for i in /chemin/de/ton/repertoire/*
do
   cp $i <nouveau nom>
done

 

edit : par contre ton problème n'est pas clair, je me suis donc arrêté à la phrase "ouvrir tous les fichiers d'un repertoire et les copiers 1 par 1 dans un fichier d'un nom différent."


Message édité par Elmoricq le 05-02-2008 à 11:10:56
n°1681878
romainr
Posté le 05-02-2008 à 11:21:11  profilanswer
 

rebonjour,
 
ouais à priori on nous a dit de le faire en bash!
(Le probléme c'est que nous on fait de la télécom et pas du tout d'info mais on en a besoin pour récupérer des données donc on perd un temps fou à des trucs qui nous interessent pas!)
 
le programme que tu m'as donné ne va pas tout copier dans un même fichier?

n°1681886
Elmoricq
Modérateur
Posté le 05-02-2008 à 11:32:29  profilanswer
 

Si "<nouveau nom>" est toujours identique, ça écrasera à chaque fois ce nouveau fichier pour chaque $i, et à la fin il ne sera égal qu'au dernier fichier recopié.
Il faut donc définir un nouveau nom de fichier pour chaque fichier à recopier, mais sans plus de précision de ta part il est difficile de t'aider davantage.

n°1681893
romainr
Posté le 05-02-2008 à 11:43:19  profilanswer
 

je te donne un exemple:
j'ai 1000 fichiers dans le repertoire et je veux tous les copiers. Chaque fichier aura un "back up", mais il faut également que je sache quel fichier est le back up de l'original donc je dois donner au nom du backup une signification particuliere
 
par exemple si j'ai simu_20GHz.txt je voudrais copier en resultat_20GHz.txt
idem             pour simu_19GHz.txt que je voudrais copier dans resultat_19GHz.txt
etc.....
 
j'espere que j'ai été plus clair!

n°1681897
Elmoricq
Modérateur
Posté le 05-02-2008 à 11:45:43  profilanswer
 

Bah remplace "simu" par "resultat" dans la recopie alors :

for i in /chemin/de/ton/repertoire/simu_*
do
   j=$(basename $i | sed 's/^simu/resultat/')
   cp $i /repertoire/de/destination/$j
done

n°1681912
romainr
Posté le 05-02-2008 à 12:04:57  profilanswer
 

Merci beaucoup!
ça marche!
maintenant j'ai une derniére question!  
Est ce que dans le programme shell je peux lui dire d'appliquer un programme en C (et ouais revoila le C). J'essaie d'être plus clair!
j'ai un programme en C qui extrait des données des fichiers originaux et je voudrais copier ces résultats dans les fichiers resultat (comme je t'ai montré au message précédent les données extraites de chaque fichier serait dans des fichiers resultat par exemple j'extrait les données de simu_20GHz.txt et je les copie dans resultat_20GHz)
comment faire pour que le programme bash applique à chaque fichier simu_ mon programme C puis mette le résultat dans le fichier resultat_  


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  copier tous les fichiers d'un repertoire

 

Sujets relatifs
programme qui traite tous les fichiers d'un repertoireMS-DOS copier des fichiers
des remplacements dans des fichiers unixsauvegarder des feuilles dans des fichiers différents
Copie d'une répertoire avec avancementles fichiers
repertoireCopier des codes d'un XLS à un autre programme
[RESOLU]Copier tous les fichiers d'un repertoire en vb6 
Plus de sujets relatifs à : copier tous les fichiers d'un repertoire


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)