Поиск Grep, возвращающий другую строку

Это мой поиск grep

grep 'Invoker_Slark*' true_pairscore.txt 

Но он возвращает строку Invoker_Slardar . Хотя файл содержит Invoker_Slark . Почему это?

  • Как использовать строки grep, которые не начинаются с «#» или «;»?
  • Как выполнить вывод grep netcat
  • Как добавить возврат каретки перед каждой новой линией?
  • Как grep аргумент командной строки, на который был применен RegEx?
  • Найдите строку в файле и переименуйте несколько файлов в результаты
  • Как grep все xml-файлы, которые не начинаются с "<"
  • Команда Grep, которая находит / исключает всю строку, где символ разделителя появляется определенное количество раз?
  • 10-я предыдущая строка из матча
  • One Solution collect form web for “Поиск Grep, возвращающий другую строку”

    Причина в том, что Invoker_Slark* считается регулярным выражением, где k* означает: «ноль или больше вхождений k»

    Это отличается от шаблонов globing shell, где * означает 0 или более символов.

    Чтобы найти Invoker_Slark любом месте строки, вам необходимо:

    1. grep 'Invoker_Slark' true_pairscore.txt или

    2. grep -x '.*Invoker_Slark.*' true_pairscore.txt

    Если строка поиска должна находиться в начале строки, это должно быть изменено на:

    1. grep '^Invoker_Slark' true_pairscore.txt или

    2. grep -x 'Invoker_Slark.*' true_pairscore.txt

    Linux и Unix - лучшая ОС в мире.