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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  pb d'écrasement de variable? avec un script awk

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

pb d'écrasement de variable? avec un script awk

n°679027
thurfin
la clarté dans la confusion
Posté le 17-05-2005 à 13:35:05  profilanswer
 

Bonjour
 
J'ai un problème avec awk. Je souhaiterais à partir d'un txt récupérer les 2 premières colonnes de celui-ci.Pas de pb jusqu'ici, ça marche très bien, j'arrive à récupérer ces 2 chaines et les insérer ds 1 variable.Par contre, lorsque j'essaie de récupérer la 3ème colonne elle n'existe plus.
De même lorsque je récupère la 3ème valeur de ma ligne avant les 2 autres, celles ci n'existent plus
Voila mon code:
 
awk -F: '{
        print "ici:"$3
        $login=substr($2,1,1)$1
        $gro=$3
        print "login:"$login
        print $gro
        {
                if ($3=="c" ){
                        print "compta"
                }
                if ($3=="d" ){
                        print "direction"
                }
                if ($3=="a" ){
                        print "admin"
                }
                if ($3=="s" ){
                        print "samba"
                }
        }
}' /home/pollux/users.txt
 
J'ajoute qu'inverser les lignes :$login=substr($2,1,1)$1
            $gro=$3
permet seulement 'à l'affichage de login' d'écrire soit $3 soit rien du tout
 
Merci


---------------
De Marx j'ai avant tout retenu la notion de capital
mood
Publicité
Posté le 17-05-2005 à 13:35:05  profilanswer
 

n°679028
jlighty
Posté le 17-05-2005 à 13:41:56  profilanswer
 

Bonjour, cette ligne me paraît pas correcte

Code :
  1. $login=substr($2,1,1)$1


il faudrait pas mettre plutôt :

Code :
  1. login=substr($2,1,1)$1


sinon le champ numéro "login" sera égal à substr($2,1,1)$1
 
autre chose tu sembles ajouter à la manière de PHP/Perl un "$" à chacune de tes variables, sous awk les variables n'ont pas de "$" au début sinon cela indique qu'on accède aux champs de la ligne en cours d'analyse.


Message édité par jlighty le 17-05-2005 à 13:46:05
n°679036
thurfin
la clarté dans la confusion
Posté le 17-05-2005 à 13:51:20  profilanswer
 

Merci bien :jap:


---------------
De Marx j'ai avant tout retenu la notion de capital

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  pb d'écrasement de variable? avec un script awk

 

Sujets relatifs
lancer un script au demarragescript d'insertion
Script de nettoyage[Mandriva 2005] Script d'upload de l'adresse IP
Probleme de script shellscript de recherche
[Debian] Script qui set l'AAM, testez-le !Script d'installation automatique des softs sous GENTOO
partitionner disque dur avec un script perlLancer la Konsole en root avec un script sh ?
Plus de sujets relatifs à : pb d'écrasement de variable? avec un script awk


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