J'ai un fichier qui contient des données délimitées par des tuyaux. Je veux imprimer les lignes qui n'ont que 5 colonnes.
J'ai essayé ce qui suit. Ça ne marche pas. Il imprime simplement toutes les lignes. Pourriez-vous s'il vous plaît me dire comment le faire correctement. Merci !
Contenu du fichier :
10413300|Maintenance Stock Clerk A - Michelle Hanley | Michelle Hanley (1680654)|Filled||10402112
10413301|Maintenance Stock Clerk - dasda|space||10402122
MOM Parkcentrum F;Alkotás u. 53.||34535|34345|asd
Business Center Naberezhnaya Tower" Block C"|||3453|ffg|345
Ici, j'essaie d'imprimer des lignes qui n'ont que 5 colonnes.
$ gawk -F "|" '{ if (NF=5) print $0 }' data3
10413300 Maintenance Stock Clerk A - Michelle Hanley Michelle Hanley (1680654) Filled
10413301 Maintenance Stock Clerk - dasda space 10402122
MOM Parkcentrum F;Alkotás u. 53. 34535 34345 asd
Business Center Naberezhnaya Tower Block C 3453 ffg
La sortie montre que 2 lignes sur 4 ont plus de 5 colonnes.
$ gawk -F "|" '{print NF}' data3
6
5
5
6
Réponse acceptée :
NF=5
est une affectation, le test des valeurs se fait avec ==
. Comme ceci :
awk -F | 'NF==5' data3