Функция для упрощения grep с часто используемым журналом

Прежде всего, извините, если это мучительно-новичок!

Я пытаюсь сделать функцию, которая упрощает grepping log, с которым я должен работать на регулярной основе.

Я хотел бы использовать расширенное regexp с ним и перенаправить вывод и т. Д.

Но у меня возникли проблемы с этим, используя стандартный синтаксис файла шаблона grep в этой функции.

То, как я его настроил сейчас, ужасно смотреть, но выполняет свою работу:

alias mygrep='cat /path/to/logs/my.log | grep' 

Это позволяет мне бежать без проблем

 mygrep -i -E "WARN|java" |less 

Похоже, правильная реализация должна выглядеть примерно так:

 function mygrep () { args=$* grep "$args" /path/to/logs/my.log } 

Однако, когда я использую это с параметрами поиска и трубы выше, grep возвращает недопустимую ошибку параметра .

Что мне не хватает?

Заранее благодарю за ваше терпение!

  • Должен ли я заботиться о ненужных кошках?
  • Почему трубопроводы и перенаправление работают с документами?
  • Несколько методов ввода файлов
  • Чтение с произвольного fd текущего процесса
  • Как я могу создать файл, который я получил из stdin без xargs
  • Труба не поднимает stdout
  • Как передавать данные из одной команды в другую команду, которая разрешает только файл в качестве аргумента?
  • Заменить номер CD в теге MP3 ID3
  • One Solution collect form web for “Функция для упрощения grep с часто используемым журналом”

    Следующий код содержит $args :

     grep "$args" /path/to/logs/my.log 

    Это просит передать все значение этой переменной в качестве единственного параметра в grep. Таким образом, если вы вызываете mygrep с параметрами -i и -E , grep фактически получит единственный параметр -i -E , который действительно недействителен.

    Это должно сделать следующее:

     function mygrep () { grep "$@" /path/to/logs/my.log } 

    Запись "$@" делает правильную вещь: она похожа на $* , за исключением того, что она правильно расширяет каждый параметр до одного слова.

    Interesting Posts

    Как установить тему значка GTK в i3?

    Linux + как автоматически сжимать старые файлы журналов

    как начать с моего shell-скрипта xterm, который запускает mplayer и воспроизводит файлы, которые являются аргументом скрипта

    Где хранится список точек доступа?

    Что крадет мой ключ F11?

    Изменить размер / домой на гостевой гостевой системе CentOS vmware

    Когда «/ bin / rm» удаляется при выдаче команды «rm -rfv /»?

    htop показывает меньше использования памяти

    специального устройства tmpfs не существует

    Скопировать все файлы с определенным именем файла длины

    Как получить доступ к сетевому принтеру с сервера печати Windows?

    Где живут звуковые драйверы?

    Добавление работ без >> при перенаправлении стандартного вывода и ошибки

    Какие методы регулярных выражений для проверки ввода можно использовать в сценариях оболочки?

    удалять несколько удаленных файлов с помощью команды FTP

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