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

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Commande AWK

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Commande AWK

n°1274422
claralavra​ie
Posté le 29-12-2005 à 14:09:08  profilanswer
 

Bonjour,
 
je ne connais pas le langage shell et j'essayes de comprendre un fichier batch.
Mais je tombe sur une commande awk que je n'arrive pas à déchiffrer:

Code :
  1. awk '{
  2. val1=sprintf("%dd",substr($0,1,7))
  3. val2=sprintf("%ddd",substr($0,8,7))
  4. printf("%s%s\n",val1,val2)
  5.      }' TEXT.OLD.TXT  > TEXT.TXT


 
Si quelqu'un pouvait me renseigner sur cette commande et ce que signifie ce code, ce serait sympa.
Merci

mood
Publicité
Posté le 29-12-2005 à 14:09:08  profilanswer
 

n°1274423
Elmoricq
Modérateur
Posté le 29-12-2005 à 14:14:09  profilanswer
 

"man awk" en général, et "man printf" pour l'explication des formats printf().
Tu vas en avoir besoin.
 
Sinon je dirais que ça prend les 7 premiers caractères de chaque ligne de TEXT.OLD.TXT, lui ajoute un "d", prend les 7 suivantes et lui ajoute "dd".
 
Ce qui donne :
01234567890123
=> 0123456d789123dd
 
 
Mais c'est compliqué pour pas grand chose :

awk '{ printf("%sd%sdd\n",substr($0,1,7), substr($0,8,7)) }'


Message édité par Elmoricq le 29-12-2005 à 14:14:28
n°1274424
claralavra​ie
Posté le 29-12-2005 à 14:15:27  profilanswer
 

Merci beaucoup!


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

  Commande AWK

 

Sujets relatifs
Hibernate Commande SQL direct[Heeelp] PHP en ligne de commande
Problème avec Matlab : commande xlsread et xlswriteLa commande sed, problème !
probleme commande rmicrécupérer commande create procedure
[pascal] fermer la fenetre de commandeProblème avec la commande ISDATE
[c++/linux] mise en page en ligne de commandeCommande VBS pour connaitre la Version de JVM installée
Plus de sujets relatifs à : Commande AWK


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