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

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [Bash/KSH] Ajouter une colonne dans un fichier...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Bash/KSH] Ajouter une colonne dans un fichier...

n°1849769
tanshiro
Posté le 11-02-2009 à 11:50:11  profilanswer
 

Bonjour à tous,
 
Je poste pour la première fois depuis plusieurs années... Et j'aurais besoin d'un petit coup de main pour un mini script que je suis en train de pondre.
 
j'ai un fichier ($FIC_LIST) qui contient plusieurs arbo. Une par ligne :
 

Code :
  1. /home/toto
  2. /home/titi
  3. /bin
  4. /etc


 
J'aurais besoin de lire ce fichier ligne à ligne et connaitre la taille (ou autre infos dont j'ai besoin) de chaque arbo. Par exemple :
 

Code :
  1. /home/toto  58620  ./toto  truc1
  2. /home/titi  20321  ./titi  truc2
  3. /bin  1284215  ./bin  truc3
  4. /etc  9854621  ./bidule  truc4


 
 
Pour se faire, j'ai fait :
 

Code :
  1. FIC_LIST=/mon_chemin_qui_va_bien/liste.dug
  2. cat $FIC_LIST | while read ligne
  3. do
  4.  echo "Traitement sur l'arbo $ligne"
  5.                   connaitre la taille de l'arbo en cours de lecture -> du -sk $ligne
  6.                 connaitre le chemin relatif de l'arbo en cours de lecture
  7.                 connaitre un truc sur l'arbo en cours de lecture
  8.                 Ecrire le résultat de ce que j'ai écris plus haut à la fin de chaque ligne en cours de lecture
  9.  ????exemple de trucs que j'ai trouvé  ->  awk '{printf("%-33s `du -sk $ligne`\n", $0)}' < $FIC_LIST
  10.  ????exemple de trucs que j'ai trouvé  ->  sed 's/$/ `truc machin $ligne`/g' $FIC_LIST < $FIC_LIST
  11. done


 
 
Alors j'ai deux problèmes. Executer la/les commandes voulues sur la ligne en cours de lecture
 
Et ajouter le résultat de mes commandes a la fin de chaques lignes comme dans l'exemple plus haut...
Et je galère vraiment beaucoup avec Awk ou Sed. J'arrive pas à savoir lequel il me faut et encore moins comment lui faire faire ce dont j'ai besoin... J'ai trouvé quelques trucs, mais je ne les ai jamais utilisés. Alors pour faire un truc un peu ciblé, je m'y pome vite  :sweat:  
 
Si vous avez des suggestions...
 
Merci  :hello:


Message édité par tanshiro le 11-02-2009 à 11:54:41
mood
Publicité
Posté le 11-02-2009 à 11:50:11  profilanswer
 

n°1849920
mrfantomas
http://froggysite.com
Posté le 11-02-2009 à 15:32:45  profilanswer
 

Mais....kékidit ?


---------------
http://macommune.froggysite.com  (38.949 communes, 38.949 forums !)
n°1850028
Xavier_OM
Monarchiste régicide (fr quoi)
Posté le 11-02-2009 à 19:04:46  profilanswer
 

while read line; do
    echo "${line} ---- $(du -sk ${line}) ---- $(ls ${line})"
done < liste.dug


 
 :o


---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
n°1850232
tanshiro
Posté le 12-02-2009 à 11:17:16  profilanswer
 

Nikel chrome,
 
Merci l'ami. J'avais pas tilté que je pouvais rediriger le résultat de ma boucle dans un fichiers ...  :o  
 
( d'ailleur, c'est [done > liste.dug] )
 
 
Encore merci à toi  [:quezako]


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

  [Bash/KSH] Ajouter une colonne dans un fichier...

 

Sujets relatifs
Erreur d'importation de fichier excel dans une nouvelle base access.supprimer une partie de chaine dans un fichier texte windows ?
select redirigé vers un fichierBloquer la suppression d'un fichier sous WinXP
Lancer un script VBS dans un fichier HTML[WriteExcel] Protéger un classeur - 1 colonne
Problème séparateurs lors de la conversion d'un fichier csv en excelSuppprimer une ligne dans un Array ou dans un Fichier
Ouvrir un fichier Strings avec wordblackliste sur fichier text [help]
Plus de sujets relatifs à : [Bash/KSH] Ajouter une colonne dans un fichier...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR