Câu trả lời:
Tôi nghĩ bạn sẽ có được những gì bạn muốn với -maxdepth 1
tùy chọn, dựa trên cấu trúc lệnh hiện tại của bạn. Nếu không, bạn có thể thử nhìn vào trang người đàn ông chofind
.
Mục có liên quan (để thuận tiện):
-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.
Các tùy chọn của bạn về cơ bản là:
find DirsRoot/* -maxdepth 0 -type f #This does not show hidden files
Hoặc là:
find DirsRoot/ -maxdepth 1 -type f #This does show hidden files
1
có lẽ là những gì anh ấy muốn.
-maxdepth 0
không hiển thị bất kỳ tệp nào nhưng -maxdepth 1
đang hoạt động như dự định, với các tệp ẩn cũng được hiển thị.
*
trong find DirsRoot/* -maxdepth 0 -type f
. Nếu bạn để nó ra, nó sẽ không hiển thị bất kỳ tập tin.
Tôi tin rằng bạn đang tìm kiếm -maxdepth 1
.
-maxdepth 1
?
Nếu bạn tìm giải pháp tuân thủ POSIX:
cd DirsRoot && find . -type f -print -o -name . -o -prune
-maxdepth không phải là tùy chọn tuân thủ POSIX.
find DirsRoot/* -type f -prune
?
-prune
btw) Câu trả lời là không, không thể. Để hiểu đầy đủ TẠI SAO nó không thể được đơn giản hóa, chỉ cần phát set -x
lệnh trước khi phát ra find DirsRoot/* -type f -o -prune
và bạn sẽ thấy ngay lập tức. Nguyên nhân gốc rễ là những hạn chế của việc mở rộng DirsRoot/*
biểu thức.
find . -name . -o -prune
-maxdepth 1
?