J'ai cherché ki
avec *
comme dans l'exemple ci-dessous et il aurait dû retourner les trois premières lignes. Je ne sais pas pourquoi il retourne la dernière ligne quand il n'y a pas de correspondance entre ki
.
$ grep "ki*" trial_file.txt
kartik,27,Bangalore,Karnataka
pulkit,25,Bangalore,Karnataka
kit,28,Bangalore,Karnataka
kush,24,Pennsylvania,Philadelphia
Je pense que vous attendez des cartes wild de style Shell, mais ce que vous obtenez est une expression régulière. Lorsque vous recherchez ki*
, vous demandez un nom littéral k
suivi de 0 ou plus i
s.
La première ligne ne contient pas non plus "ki".
Comment faire cela dépend de ce que vous essayez de faire correspondre exactement.
Comme indiqué ci-dessus, grep "ki"
pourrait être ce que vous voulez, ou si vous voulez ne faire correspondre que les lignes commençant par "ki", vous aurez besoin de grep "^ki"
.^
indique le début de la ligne.