Script shell
Fermé
LO2513
-
19 nov. 2007 à 16:13
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 - 21 nov. 2007 à 15:28
dubcek Messages postés 18755 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 14 novembre 2024 - 21 nov. 2007 à 15:28
A voir également:
- Script shell
- Script vidéo youtube - Guide
- Classic shell windows 11 - Télécharger - Personnalisation
- Ghost script - Télécharger - Polices de caractères
- Script bat - Guide
- Microsoft activation script - Accueil - Windows
4 réponses
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 622
20 nov. 2007 à 10:57
20 nov. 2007 à 10:57
c'est quoi/comment un tableau de correspondance ?
Le but du script est le suivant:
Transformer le fichier suivant
NOM_A;valeur_x1;NOM_B;valeur_x2
NOM_A;valeur_x2;NOM_B;valeur_x3
NOM_A;valeur_x1;NOM_B;valeur_x3
en un autre modifié :
NOM_A;valeur_y1;NOM_B;valeur_y2
NOM_A;valeur_y2;NOM_B;valeur_y3
NOM_A;valeur_y1;NOM_B;valeur_y3
les correspondances étant dans un tableau annexe du type :
x1;y1
x2;y2
x3;y3
c'est à dire remplacer les valeurs x par celle qui correspond en y
D'avance merci,
Transformer le fichier suivant
NOM_A;valeur_x1;NOM_B;valeur_x2
NOM_A;valeur_x2;NOM_B;valeur_x3
NOM_A;valeur_x1;NOM_B;valeur_x3
en un autre modifié :
NOM_A;valeur_y1;NOM_B;valeur_y2
NOM_A;valeur_y2;NOM_B;valeur_y3
NOM_A;valeur_y1;NOM_B;valeur_y3
les correspondances étant dans un tableau annexe du type :
x1;y1
x2;y2
x3;y3
c'est à dire remplacer les valeurs x par celle qui correspond en y
D'avance merci,
Carri€
Messages postés
41
Date d'inscription
lundi 19 février 2007
Statut
Membre
Dernière intervention
27 novembre 2007
29
20 nov. 2007 à 23:13
20 nov. 2007 à 23:13
salut!
essai avec la commande regexp ("man regexp") je crois qu'on peut l'utiliser aisément pour modifier des valeurs.Désolé mais je ne pourrai pas t'aider d'avantage. J'ai un collègue qui avait fais la même chose et je crois bien que c'est cette comande qu'il a utilisé.
essai avec la commande regexp ("man regexp") je crois qu'on peut l'utiliser aisément pour modifier des valeurs.Désolé mais je ne pourrai pas t'aider d'avantage. J'ai un collègue qui avait fais la même chose et je crois bien que c'est cette comande qu'il a utilisé.
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 622
21 nov. 2007 à 15:28
21 nov. 2007 à 15:28
Soit f1.txt
NOM_A;valeur_x1;NOM_B;valeur_x2
NOM_A;valeur_x2;NOM_B;valeur_x3
NOM_A;valeur_x1;NOM_B;valeur_x3
Soit f2.txt
x1;y1
x2;y2
x3;y3
awk 'BEGIN{FS=";";while("cat f2.txt"|getline)x[$1]=$2} ; {FS="[_;]" ; $4=x[$4] ; $8=x[$8] ; print $0}' < f1.txt
NOM_A;valeur_x1;NOM_B;valeur_x2
NOM_A;valeur_x2;NOM_B;valeur_x3
NOM_A;valeur_x1;NOM_B;valeur_x3
Soit f2.txt
x1;y1
x2;y2
x3;y3
awk 'BEGIN{FS=";";while("cat f2.txt"|getline)x[$1]=$2} ; {FS="[_;]" ; $4=x[$4] ; $8=x[$8] ; print $0}' < f1.txt