Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/01/2008, 16h20   #1
Membre habitué
 
Avatar de ben_harper
 
Inscription : juin 2006
Messages : 140
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : juin 2006
Messages : 140
Points : 108
Points : 108
Par défaut Tronquer un champ avec awk

Bonjour, voici mon problème.

J'ai un fichier toto.dat dont le dernier champ ne doit pas excéder 5 caractères.

J'arrive bien à récupérer le dernier champ de chaque ligne avec la commande suivante :

awk -F "\x01" '{print $6}' toto.dat

Dans un premier temps je n'arrive pas à remonter uniquement les champs dont la taille dépasse 5 caractères.

Et ensuite j'aimerais ne garder que les 5 premiers caractères des champs qui font plus.

Est ce qu'une âme charitable aurait une idée ?

Merci d'avance
ben_harper est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 16h41   #2
Nouveau Membre du Club
 
Inscription : janvier 2008
Messages : 81
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : janvier 2008
Messages : 81
Points : 34
Points : 34
Dans un premier temps je n'arrive pas à remonter uniquement les champs dont la taille dépasse 5 caractères.

Essaie la commande awk -F"\x01" 'length($6)>5 {print $6}' toto.dat
panach91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 17h31   #3
Nouveau Membre du Club
 
Inscription : janvier 2008
Messages : 81
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : janvier 2008
Messages : 81
Points : 34
Points : 34
Pour ta deuxième requète, essaie ceci :

awk -F"\x01" 'length($NF)>5 {print substr($NF,1,5) }' toto.dat


Tiens moi au courant si ça fonctionne.

panach91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/01/2008, 10h22   #4
Membre habitué
 
Avatar de ben_harper
 
Inscription : juin 2006
Messages : 140
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : juin 2006
Messages : 140
Points : 108
Points : 108
Bonjour,

merci pour la réponse,

je n'ai pas encore eu le temps de tester car j'ai trouvé une solution.

Je te dirais à l'occasion si ça marche.

Merci.
ben_harper est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h53.


 
 
 
 
Partenaires

Hébergement Web