J'essaie de prendre un fichier contenant une liste et de compter combien de fois les éléments de cette liste sont présents dans un fichier cible :
list.txt
blonde
red
black
target.txt
bob blonde male
sam blonde female
desired_output.txt
blonde 2
red 0
black 0
J'ai coopté le code suivant pour obtenir les valeurs présentes dans target.txt :
awk '{count[$2]++} END {for (word in count) print word, count[word]}' target.txt
Mais le résultat n'inclut pas les éléments souhaités qui se trouvent dans le fichier liist.txt mais pas dans le fichier target.txt.
current_output.txt
blonde 2
J'ai essayé plusieurs choses pour que cela fonctionne, notamment :
awk '{word[$1]++;next;count[$2]++} END {for (word in count) print word, count[word]}' list.txt target.txt
Cependant, je n'ai pas réussi à obtenir gain de cause.
Quelqu'un pourrait-il m'aider à faire en sorte que cette instruction awk lise le fichier key.txt ? Toute explication du code serait également très appréciée. Merci d'avance pour votre aide.