Gawk séparateur ;
cg75005
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai un fichier où j'ai des données
bator.ad.ted.security administrator 30/08/2009 3.6.0.574 VIRUSCAN8600 8.5.0.781.Srv 5301.4018
avec plusieurs espaces.
J'ai vu dans un forum qu'on peut utiliser la commande gawk, sauf que je ne sais pas m'en servir. Je voudrais savoir comment faire ?
Voici :
gawk '{ print substr($0,1,10) ";" substr($1,11,4) ";" substr($0,15); }' datasource.txt > resultat.txt
Je pense que je dois changer les subsr ... car pourquoi pour le 1er on met 0,1,10 etc.
Est-ce-que quelqu'un peut m'aider ?
Cordialement,
j'ai un fichier où j'ai des données
bator.ad.ted.security administrator 30/08/2009 3.6.0.574 VIRUSCAN8600 8.5.0.781.Srv 5301.4018
avec plusieurs espaces.
J'ai vu dans un forum qu'on peut utiliser la commande gawk, sauf que je ne sais pas m'en servir. Je voudrais savoir comment faire ?
Voici :
gawk '{ print substr($0,1,10) ";" substr($1,11,4) ";" substr($0,15); }' datasource.txt > resultat.txt
Je pense que je dois changer les subsr ... car pourquoi pour le 1er on met 0,1,10 etc.
Est-ce-que quelqu'un peut m'aider ?
Cordialement,
2 réponses
hello
si le but est de remplacer les espaces par ; , pour en faire un .csv, par exemple
si le but est de remplacer les espaces par ; , pour en faire un .csv, par exemple
$ cat a3 bator.ad.ted.security administrator 30/08/2009 3.6.0.574 VIRUSCAN8600 8.5.0.781.Srv 5301.4018 $ awk '{gsub(" ", ";");print $0}' < a3 bator.ad.ted.security;administrator;30/08/2009;3.6.0.574;VIRUSCAN8600;8.5.0.781.Srv;5301.4018