Ответы:
Я думаю, что вы получите то, что вы хотите с -maxdepth 1
опцией, основываясь на вашей текущей структуре команд. Если нет, вы можете попробовать просмотреть страницу справочника find
.
Соответствующая запись (для удобства):
-maxdepth levels
Descend at most levels (a non-negative integer) levels of direc-
tories below the command line arguments. `-maxdepth 0' means
only apply the tests and actions to the command line arguments.
Ваши варианты в основном:
find DirsRoot/* -maxdepth 0 -type f #This does not show hidden files
Или:
find DirsRoot/ -maxdepth 1 -type f #This does show hidden files
1
, вероятно, то, что он хочет.
-maxdepth 0
не показывает никаких файлов, но -maxdepth 1
работает как задумано, с скрытыми файлами, которые также отображаются.
*
ин find DirsRoot/* -maxdepth 0 -type f
. Если вы пропустите это, он не будет показывать никаких файлов.
Я верю, что вы ищете -maxdepth 1
.
-maxdepth 1
?
Если вы ищете POSIX-совместимое решение:
cd DirsRoot && find . -type f -print -o -name . -o -prune
-maxdepth не является POSIX-совместимым параметром.
find DirsRoot/* -type f -prune
?
-prune
btw) Ответ - нет, он не может. Чтобы полностью понять, ПОЧЕМУ это нельзя упростить, просто отправьте set -x
команду перед отправкой, find DirsRoot/* -type f -o -prune
и вы сразу увидите это сами. Коренная причина - ограничения расширения DirsRoot/*
выражения оболочки .
find . -name . -o -prune
-maxdepth 1
?