ฉันจะค้นหาทุกไฟล์และไดเรกทอรีที่ตรงกับรูปแบบโดยไม่รวมหนึ่งไดเรกทอรีได้find
อย่างไร
ว่าฉันมีโครงสร้างไฟล์ดังต่อไปนี้
. foo-ยกเว้นฉัน / foo.txt foo-ยกเว้น-me-not / foo.txt บาร์/ foo.txt foobar / bar.txt foofoo.txt
ฉันจะได้รับผลลัพธ์ต่อไปนี้โดยใช้find
:
./bar/foo.txt ./bar/foobar ./bar/foobar/foofoo.txt ./foo-exclude-me-not ./foo-exclude-me-not/foo.txt
ฉันได้ลองใช้ทั้งสองคำสั่งต่อไปนี้:
หา -name 'foo-excluse-me' -prune -o -name 'foo *' หา - ชื่อ 'foo *' \! -path './foo-exclude-me/*'
แต่ทั้งคู่กลับมานี้:
./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
ฉันจะแยกfoo-exclude-me
ไดเรกทอรีได้อย่างถูกต้องได้อย่างไร?
@ MaxMackie perfect :)
—
Tyilo
มันซ่อมได้หรือไม่ การแก้ไขแบบใดที่เหมาะกับคุณ ฉันสามารถใส่ไว้ในคำตอบแทนความคิดเห็น
—
n0pe
@MaxMackie ใช้ทั้ง
—
Tyilo
-print
และแทนfoo-exclude-me
./foo-exclude-me
น่ากลัวดูเหมือนว่ากิลส์ชนะฉันไปแม้ว่า :)
—
n0pe
foo-exclude-me
./foo-exclude-me
ลองผนวกต่อ-print
ท้ายคำสั่งด้วย