Или find -type f -o -type dдля POSIX-совместимой альтернативы.
manatwork
Эй, у меня возникли небольшие проблемы с этим, когда я запустил $ find. -type d -or -type f -and -iname "видение", оно не выполняет то, что я ожидаю, я что-то упускаю!
MageProspero
2
-a имеет приоритет над -o, используйте круглые скобки (но избегайте их для оболочки). Не нужно использовать нестандартные -or или -and.
Стефан Шазелас
если я попытаюсь найти. -type d или -type f -name 'abc' . I get an error.. find: пути должны предшествовать выражению: `.. Есть идеи почему?
alpha_989
1
@ alpha_989 -раньше не было or?
Матеуш Пиотровский
2
ТЛ: др
использование find . -name "*string*" -type f -o -name "*string*" -type d
объяснение
Команда -o полностью orопределяет аргументы после пути к файлу, чтобы find . -name "*string*" -type f -o -type dвычислитьfind . (-name "*string*" -type f) -o (-type d) . По этой причине вы должны указать
Большинство пользователей захотят что-то похожее
find . -name "*string*" -type f -o -name "*string*" -type d
Использование GNU findверсии 4.7.0. Кажется, он не поддерживает ,. Сообщение об ошибке говорит, чтоfind: Arguments to -type should contain only one letter.
find -type f -o -type d
для POSIX-совместимой альтернативы.. I get an error..
find: пути должны предшествовать выражению: `.. Есть идеи почему?-
раньше не былоor
?ТЛ: др
использование
find . -name "*string*" -type f -o -name "*string*" -type d
объяснение
Команда -o полностью
or
определяет аргументы после пути к файлу, чтобыfind . -name "*string*" -type f -o -type d
вычислитьfind . (-name "*string*" -type f) -o (-type d)
. По этой причине вы должны указатьБольшинство пользователей захотят что-то похожее
который вычисляется как
найти детали синтаксиса
-name "*string*"
ищет имена, которые содержат строкуstring
где-либо в них.источник
Если вы используете GNU find, то вам может подойти следующее решение:
Смотрите
man find
для более подробной информации:источник
GNU find
версии 4.7.0. Кажется, он не поддерживает,
. Сообщение об ошибке говорит, чтоfind: Arguments to -type should contain only one letter.