Почему команда find -L ... fgrep не работает?

Почему команда find -L ... fgrep не работает?

Я перешел с Ubuntu на Debian, и findтеперь у меня возникла проблема с поиском в tex-файлах словамаси. Код и его вывод

masi@masi:~$ find -L "/home/masi/" -xtype f \
    -name "*.tex" -exec fgrep -l 'masi' {} + /dev/null

find: paths must precede expression: /dev/null
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
  • /dev/nullнеобходимо во втором наборе команд, потому что мы используем find -L, так как мы хотим включить все символические ссылки и пройти по ним и не исключать ничего из поиска. Тема, где мотивация для использованияздесьоКак избежать множества уровней символических ссылок с помощью этой находки?

Как однострочник

find -L "/home/masi/" -xtype f -name "*.tex" -exec fgrep -l 'masi' {} + /dev/null

ОС: Debian 8.5
Ядро Linux: 4.6 с бэкпортами
Оборудование: Asus Zenbook UX303UA
Связано: findкоманда моего haetexскрипта в темеКак искать файлы .tex?
Найти: find (GNU findutils) 4.4.2
Fgrep:grep (GNU grep) 2.20

решение1

Только:

find -L /home/masi/ -xtype f -name "*.tex" -exec fgrep -l 'masi' {} +

нет необходимости /dev/null, поскольку {}это место для обработанного файла(ов)

Если вы пытаетесь скрыть вывод ошибок, используйте это следующим образом:

command 2>/dev/null

Связанный контент