Affichage des champ
Résolu
alibm
Messages postés
82
Date d'inscription
Statut
Membre
Dernière intervention
-
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour,
J'ai ce script qui affiche les informations qui sont reparti dans des champs dans un fichier (voir exemple)
# fichier data
George:olivier:29:0298333242:Brest
Brain:marcel:13:0466342233:Gardagnes
Fares:myriam:30:0434214452:Nimes
# affichage
nom George
olivier
29
0298333242
Brest
....
Ce script n'affiche pas les mots " prénom, age, id, adresse"
Aussi comment faire pour afficher tou ses informations sur le meme ligne :(
nom George prénom Olivier Age 29 Id 0298333242 Adresse Brest
j'ai essayé avec -n mais ça ne marche pas :(
{code}
#!/bin/bash
while read line ;
do
echo nom "$line" | cut -d":" -f1
echo prenom "$line" | cut -d":" -f2
echo age "$line" | cut -d":" -f3
echo Id"$line" | cut -d":" -f4
echo adresse"$line" | cut -d":" -f5 ; done < data
Merci beaucoup :/
J'ai ce script qui affiche les informations qui sont reparti dans des champs dans un fichier (voir exemple)
# fichier data
George:olivier:29:0298333242:Brest
Brain:marcel:13:0466342233:Gardagnes
Fares:myriam:30:0434214452:Nimes
# affichage
nom George
olivier
29
0298333242
Brest
....
Ce script n'affiche pas les mots " prénom, age, id, adresse"
Aussi comment faire pour afficher tou ses informations sur le meme ligne :(
nom George prénom Olivier Age 29 Id 0298333242 Adresse Brest
j'ai essayé avec -n mais ça ne marche pas :(
{code}
#!/bin/bash
while read line ;
do
echo nom "$line" | cut -d":" -f1
echo prenom "$line" | cut -d":" -f2
echo age "$line" | cut -d":" -f3
echo Id"$line" | cut -d":" -f4
echo adresse"$line" | cut -d":" -f5 ; done < data
Merci beaucoup :/
5 réponses
Salut,
$ cat fichier George:olivier:29:0298333242:Brest Brain:marcel:13:0466342233:Gardagnes Fares:myriam:30:0434214452:Nimes $ awk 'BEGIN{FS=":"} {print "nom "$1 " prenom " $2 " Age " $3 " Id " $4 " Adresse " $5}' fichier nom George prenom olivier Age 29 Id 0298333242 Adresse Brest nom Brain prenom marcel Age 13 Id 0466342233 Adresse Gardagnes nom Fares prenom myriam Age 30 Id 0434214452 Adresse Nimes
Re,
lami20j@debian:~/trash$ cat fichier George:olivier:29:0298333242:Brest Brain:marcel:13:0466342233:Gardagnes Fares:myriam:30:0434214452:Nimes lami20j@debian:~/trash$ lami20j@debian:~/trash$ cat fichier.sh #!/bin/bash while read line do echo -e "nom $(echo $line | cut -d: -f1)\c" echo -e " prenom $(echo $line | cut -d: -f2)\c" echo -e " age $(echo $line | cut -d: -f3)\c" echo -e " Id $(echo $line | cut -d: -f4)\c" echo " adresse $(echo $line | cut -d: -f5)" done < fichier lami20j@debian:~/trash$ lami20j@debian:~/trash$ sh fichier.sh nom George prenom olivier age 29 Id 0298333242 adresse Brest nom Brain prenom marcel age 13 Id 0466342233 adresse Gardagnes nom Fares prenom myriam age 30 Id 0434214452 adresse Nimes lami20j@debian:~/trash$
Salut,
Sinon, pour alléger (sans les "cut") :
Sinon, pour alléger (sans les "cut") :
#! /bin/sh #set -xv while IFS=: read nom prenom age iden adresse do echo "nom $nom prenom $prenom age $age Id $iden adresse $adresse" done < fichier;-))
Re,
Mais je ne veux pas avec awk.
Ben, il faut le dire. Après le merci beaucoup que peut-on comprendre?! Que c'est résolu, non?!
Mais je ne veux pas avec awk.
Ben, il faut le dire. Après le merci beaucoup que peut-on comprendre?! Que c'est résolu, non?!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mais je ne veux pas avec awk.
S'il y a une autre possibilité SVP la noter
Merci