старт-стоп-демон - странное поведение

Некоторые реализации утилиты grepимеют флаг -I, который заставляет grepигнорировать двоичные файлы. Вы также можете использовать -iдля поиска совпадения без учета регистра -и -Fдля сопоставления с фиксированной строкой (, а не с регулярным выражением ). Если вы ищете отдельные слова , вам следует использовать -w, которые есть в некоторых grepреализациях. Затем, чтобы рекурсивно перейти в подкаталоги, вы можете использовать -Rдля рекурсивного поиска файлов и -lдля получения имен файлов, содержащих совпадения с шаблоном. Затем мы хотели бы использовать --include, если у нас есть GNU grep, чтобы просматривать только файлы с определенным расширением.

grep -Fil -IRw --include='*.txt' 'ubuntu' /path/to/top/dir

Использованы стандартные опции :-F, -i, -l.

Использовались не -стандартные опции (, поддерживаемые некоторыми grepреализациями ):-w, -I, -R, --include.


Использование findи OpenBSD grep, которая не имеет --includeи использует --binary-filesвместо-I(GNU grepтакже имеет этот флаг):

find /path/to/top/dir -type f -name '*.txt' \
    -exec grep -Fil -w --binary-files=without-match 'ubuntu' {} +
0
23.09.2019, 23:26
1 ответ

По крайней мере, если это демон запуска -остановки -Debian/Ubuntu, вам не следует цитировать подобные аргументы.

start-stop-daemon --start --exec /usr/sbin/mountd -- -f /etc/exports -p 7792

должно работать. (Когда вы цитируете его, он отправляется в mountd как один командный -строковый аргумент, а не четыре, как должно быть.)

1
28.01.2020, 02:39

Теги

Похожие вопросы