Commande shell
Résolu
th.deudon
Messages postés
449
Statut
Membre
-
th.deudon Messages postés 449 Statut Membre -
th.deudon Messages postés 449 Statut Membre -
Bonjour à tous, me revoila ;)
Existe il une commande permettant de print le nom du fichier dans lequel on est sur awk?
Il me semble que la commande match fera l'affaire pour la prochaine question, mais je n'ai pas compris son fonctionnement
il faudrait que j'arrive à concaténer d'une façon spéciale : deux fichiers
la ligne du fichier 2 doit aller à celle du fichier 1 contenant son élément ( $i ) si cette dernière a le même élément en $y , j'espère avoir été clair, merci :)
Existe il une commande permettant de print le nom du fichier dans lequel on est sur awk?
Il me semble que la commande match fera l'affaire pour la prochaine question, mais je n'ai pas compris son fonctionnement
il faudrait que j'arrive à concaténer d'une façon spéciale : deux fichiers
la ligne du fichier 2 doit aller à celle du fichier 1 contenant son élément ( $i ) si cette dernière a le même élément en $y , j'espère avoir été clair, merci :)
A voir également:
- Commande shell
- Invite de commande - Guide
- Classic shell - Télécharger - Personnalisation
- Commande terminal mac - Guide
- Diskpart commande - Guide
- Commande dism - Guide
fichier 1:
blabla blibli toto1 bleble
blabla blibli oto2 bleble
blabla blibli toto3 bleble
blabla blibli toto4 bleble
blabla blibli toto5 bleble
fichier 2:
1 2 3 xxx/toto3.yyy
4 5 6 xxx/toto2.yyy
fichier final :
blabla blibli toto1 bleble
blabla blibli toto2 bleble 4 5 6
blabla blibli toto3 bleble 1 2 3
blabla blibli toto4 bleble
blabla blibli toto5 bleble
$ awk 'FNR==NR {t[++n]=$0; next} {printf $0; for(m=1; m<=n;){split(t[m++], a); if(a[4] ~ "/" $3 ".")printf OFS a[1] OFS a[2] OFS a[3]} print ""}' fichier2 fichier1 blabla blibli toto1 bleble blabla blibli toto2 bleble 4 5 6 blabla blibli toto3 bleble 1 2 3 blabla blibli toto4 bleble blabla blibli toto5 bleble $fichier 1
A B toto C D
...
fichier 2
.//blabla/blibli/toto.bloblo 4 5
fichier 3
A B toto C D 4 5
vraiment desole :( vu que j'ai pas compris ton code, je sais pas le transformer ^^
awk 'FNR==NR {t[++n]=$0; next} {printf $0; for(m=1; m<=n;){split(t[m++], a); if(a[1] ~ "/" $3 ".")printf OFS a[2] OFS a[3] } print ""}'