awk tableau associatif avec le modèle que l'indice de
quelle serait la meilleure solution pour avoir awk magasin cherché motif le long avec des lignes où il a été trouvé dans un tableau.. j'ai besoin d'un script shell pour que ou il peut être fait en utilisant uniquement awk..
donc par exemple si je recherche pour le mot "guitare", il fait un tableau qui détient l'info que le mot a été trouvé sur la ligne 13, 18 et 89 par exemple?
awk '/home/{
array[$0] = NR
}
END {
for(i in array) print i, array[i] }' 1-1000.txt
par exemple ce serait d'imprimer des lignes qui appariés le long avec un numéro où ils ont été trouvés.. mais je n'ai pas besoin de 0$, mais que la "maison" modèle d'indice de tableau associatif qui contiendrait des lignes de valeurs.. mais là encore il y a un problème comment faire pour avoir plusieurs valeurs pour que l'un indice??
OriginalL'auteur branquito | 2013-06-03
Vous devez vous connecter pour publier un commentaire.
Il est important de savoir que
keys
sont uniques. Donc, si vous avez l'intention de stocker modèle de recherche comme la clé et le numéro de ligne que la valeur alors la valeur sera remplacé par la dernière ligne du modèle a été vu.Donc une bonne façon de le faire serait:
De sortie:
Si vous avez besoin d'itérer sur la ligne d'recherchez un modèle particulier et de les stocker ensuite, vous pouvez utiliser le
for loop
d'inspecter chaque mot de la ligne et une fois votre mot trouvé de magasin qui comme un tableau.Mise à jour sur la base des observations:
Pour itérer sur les deux fichiers (où l'on est en train d'être utilisé en tant que recherche et de la deuxième à la recherche pour les lignes correspondant à des recherches).
Test:
de sorte que la "maison" de mon exemple est à venir à partir du 1er fichier, et que 1-1000.txt est fichier je suis la correspondance contre pour voir les lignes de ses contenus
J'ai ajouté une mise à jour de la réponse. Espérons que cela aide. Bonne chance
c'est très bien, mais comment aurais-je à partir de là, les numéros de lignes, où il a été trouvé, il faut dire monkeydeal trouver sur la ligne 1, à cause de --> singe, apple est l'un des fruits se trouver sur la ligne 3 à cause de -->apple (les numéros de ligne devrait venir de la 2ème fichier, donc dans cet exemple texte2) merci!
C'est facile. Utilisation
FNR
qui stocke le numéro de ligne de chaque fichier. Dans ce cas, il serait numéro de ligne du second fichier.OriginalL'auteur jaypal singh