Làm cách nào tôi có thể tìm thấy mọi tệp và thư mục khớp với một mẫu, ngoại trừ một thư mục bằng cách sử dụng find
?
Nói rằng tôi có cấu trúc tập tin sau đây;
. foo-loại trừ tôi / foo.txt foo-loại trừ tôi-không / foo.txt quán ba/ foo.txt foobar / bar.txt foooo.txt
Làm thế nào tôi có được đầu ra sau bằng cách sử dụng find
:
./bar/foo.txt ./bar/foobar ./bar/foobar/foustoo.txt ./foo-exclude-me-not ./foo-exclude-me-not/foo.txt
Tôi đã thử sử dụng cả hai lệnh sau:
tìm thấy . -name 'foo-loại trừ tôi' -prune -o -name 'foo *' tìm thấy . -tên 'foo *' \! -path './foo-exclude-me/*'
nhưng cả hai đều trả lại cái này:
./bar/foo.txt
./bar/foobar
./bar/foobar/foofoo.txt
./foo-exclude-me # << this should be excluded
./foo-exclude-me-not
./foo-exclude-me-not/foo.txt
Làm thế nào tôi có thể loại trừ đúng foo-exclude-me
thư mục?
-print
và foo-exclude-me
thay vì ./foo-exclude-me
.
foo-exclude-me
thay vì./foo-exclude-me
. Cũng thử nối thêm-print
vào cuối lệnh.