ว่าฉันมีไฟล์ต่อไปนี้:
|-- bar `-- foo |-- type_A_1 |-- type_A_2 |-- type_B_1 |-- type_B_2 |-- type_B_xx |-- type_B_xx `-- something_else
ฉันคิดว่าคำสั่งดังต่อไปนี้
print -l foo/*~{type_B*}
จะพิมพ์ทุกอย่างภายใต้foo ยกเว้นสิ่งที่เริ่มต้นด้วยtype_Bแต่ไม่พิมพ์แทนทุกอย่างภายใต้ foo:
foo/type_A_1
foo/type_A_2
foo/type_B_1
foo/type_B_2
foo/type_B_xx
foo/something_else
ฉันพยายามprint -l foo/*~type_Bและได้สิ่งเดียวกัน
wildcard ข้อยกเว้น~ทำงานใน zsh อย่างไร
foo/*~*/type_A*ทำงานของรูปแบบหรือไม่ โฟลเดอร์ที่สอง*ขยายไปยังทุก ๆโฟลเดอร์ภายใต้ไดเรกทอรีทำงานหรือไม่หรือมันฉลาดพอที่จะขยายเฉพาะfooหรือไม่