Відповіді:
Я думаю, ти отримаєш те, що хочеш -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
?