Commande simple (1 ligne) sélection de mots ds colonne "entête"
Swiss Knight
Messages postés
1956
Date d'inscription
Statut
Membre
Dernière intervention
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Salut,
Existe-t-il un moyen simple pour sélectionner toutes les lignes d'un fichier sur la base d'un mot clé contenu dans dans une colonne ( basé sur l'entête de la colonne, et non sa position ) ?
Par exemple, en langage humain :
"selectionner toutes les lignes (complètes) du fichier dont le contenu de la colonne "date" est 22.04.2013"
??
Avec awk, c'est relativement aisé si on connait le numéro de la colonne, mais je souhaite le faire connaissant le contenu de l'entête de la colone.
Et si possible en 1 ligne, le plus simplement possible... pour pouvoir vérifier rapidement la présence de certains critères.
Merci et bonne fin de soirée / nuit.
Existe-t-il un moyen simple pour sélectionner toutes les lignes d'un fichier sur la base d'un mot clé contenu dans dans une colonne ( basé sur l'entête de la colonne, et non sa position ) ?
Par exemple, en langage humain :
"selectionner toutes les lignes (complètes) du fichier dont le contenu de la colonne "date" est 22.04.2013"
??
Avec awk, c'est relativement aisé si on connait le numéro de la colonne, mais je souhaite le faire connaissant le contenu de l'entête de la colone.
Et si possible en 1 ligne, le plus simplement possible... pour pouvoir vérifier rapidement la présence de certains critères.
Merci et bonne fin de soirée / nuit.
A voir également:
- Commande simple (1 ligne) sélection de mots ds colonne "entête"
- Invite de commande - Guide
- Déplacer colonne excel - Guide
- Partage de photos en ligne - Guide
- Trier colonne excel - Guide
- Commande terminal mac - Guide
3 réponses
hello
$ cat a2 rien rien rien date rien x x x 22.04.2013 x y y y 22.05.2013 y $ $ awk -v var=22.04.2013 'NR==1 {while(++n<=NF)if($n ~ /date/)next} $n ~ var' a2 x x x 22.04.2013 x $
Salut.
Nickel chrome ; le petit hic c'est que ça ne fonctionne pas si un champ contient beaucoup de mots, par exemple un commentaire, et qu'on aimerait faire un recherche à la manière de grep, sur un mot, ou même un morceau de mot.
Cette méthode nécessite d'entrer l'intégralité du champ dans la variable var.
"Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement." -A. Einsten-
Nickel chrome ; le petit hic c'est que ça ne fonctionne pas si un champ contient beaucoup de mots, par exemple un commentaire, et qu'on aimerait faire un recherche à la manière de grep, sur un mot, ou même un morceau de mot.
Cette méthode nécessite d'entrer l'intégralité du champ dans la variable var.
"Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement." -A. Einsten-
donne un exemple, parce que :
$ awk -v var=4.2013 'NR==1 {while(++n<=NF)if($n ~ /date/)next} $n ~ var' a2 x x x 22.04.2013 x $ $ cat a2 rien rien rien date rien x x x 22.04.2013 x y y y 22.05.2013 y y y y 22.04.2014 y $ awk -v var="4.201[34]" 'NR==1 {while(++n<=NF)if($n ~ /date/)next} $n ~ var' a2 x x x 22.04.2013 x y y y 22.04.2014 y $