grep отлично работает в командной строке, но ничего не возвращает в скрипте

Я пытаюсь написать небольшой скрипт, чтобы получить список файлов, соответствующих определенным критериям, в файл.

#!/bin/sh cd /var/www_data/patch/ grep --include=\*.{php,ini,conf,sh} -ril -P "'([\d\w\-\_\.]+)(@domain.com)'" "/var/www_data/something/" 2>&1 > mails 

Линия grep отлично работает в командной строке, но если я запустил ее через скрипт, итоговый файл будет иметь размер 0 байт. Есть идеи, почему это происходит?

  • как удалить последнюю черту пути каталога?
  • Tmux отображает «<xzy not ready>» в строке состояния
  • Запуск скрипта cron с lynx не работает
  • Печать цветного текста с использованием скрипта
  • Переупорядочить строки в каждой трехстрочной записи
  • Подключение к порту с использованием общего сценария kermit
  • xterm не использует .Xresources
  • Когда «если» не нужно?
  • 2 Solutions collect form web for “grep отлично работает в командной строке, но ничего не возвращает в скрипте”

    Нашел свою ошибку. Предполагалось, что это будет #!/bin/bash . Благодаря @steeldriver для наконечника

    Чтобы включить расширение оболочки внутри скрипта, вам нужно передать параметр командной строки в bash, это можно сделать в самом скрипте:

     #! /bin/bash set -B #enables expansion set -X #enables debugging 

    При первом варианте все будет передано оболочке, как если бы оно было написано в командной строке, второй вариант будет генерировать много результатов, что очень полезно, чтобы увидеть, что происходит, но вы, конечно же, хотите отключить его, как только ваш скрипт работает правильно ,

    Interesting Posts

    Семейство файловой системы EXT: Почему первый суперблок начинается со смещения 1024?

    Как мне получить grep для поиска ebuild с определенными строками и создать вывод, содержащий только местоположение ebuild?

    Помогите исправить поврежденный GRUB

    Linux Noob: apt-get не устанавливает пакет, но нет ошибки?

    fail2ban работает, но для него нет файла журнала fail2ban.log

    «Ssh-add -d» отказался удалить идентификатор

    Как я могу просматривать пакеты из определенного репозитория?

    «Нет такого файла» с ksh, но скрипт работает с ksh -x?

    ZSH: В чем разница между `.` и` source`?

    Верните правую клавишу Alt в Ctrl

    «Su» с ошибкой «Соединение X11 отклонено из-за неправильной аутентификации»

    Переименование элементов управления alsa

    Проблема с задержкой блокировки Caps

    Grep для нескольких строк, покажите количество строк после одной из строк (но не другой)

    Как разбить аудиофайл на несколько?

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