ใช้ find in Terminal เพื่อลบไดเรกทอรีและไฟล์ของพารามิเตอร์การค้นหาเดียวกัน


16

หากฉันพิมพ์สิ่งต่อไปนี้ในเทอร์มินัลมันจะลบไฟล์ทั้งหมดที่ตรงกับพารามิเตอร์การค้นหา:

sudo find . -type f -name "*Xilisoft*" -exec rm -rf {} \;

ถ้าฉันเริ่มต้นอีกครั้งและพิมพ์ด้วยdแทนที่จะfเป็นการลบไดเรกทอรีทั้งหมด

sudo find . -type d -name "*Xilisoft*" -exec rm -rf {} \;

ฉันจะเอามันไปลบประเภทfและdในบัดดล?

คำตอบ:


23

คุณสามารถระบุได้หลาย-typeตัวเลือก-oเช่น-type f -o -type dในคำสั่งเดียว

find . -name "*Xilisoft*" -type f -o -name "*Xilisoft*" -type d

-oจับคู่พารามิเตอร์ทั้งหมดดังนั้นการ-nameจัดเตรียมไว้สองครั้งในคำสั่งด้านบน
โปรดทราบว่าพบสามารถลบผลการใช้มากกว่า-delete-exec rm -rf {}


3
ฉันไม่รู้เกี่ยวกับ-deleteตัวเลือกดังนั้นนี่จึงเป็นข้อมูลต้อนรับ
Danijel-James W
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.