ฉันต้องการค้นหาไฟล์ทั้งหมดซ้ำที่สคริปต์ซึ่งยอมรับไฟล์เนื่องจากอาร์กิวเมนต์ส่งคืนค่าที่ไม่เป็นศูนย์ มีความคิดวิธีการทำเช่นนี้โดยใช้ 'ค้นหา' หรือเครื่องมือที่คล้ายกัน?
ฉันต้องการค้นหาไฟล์ทั้งหมดซ้ำที่สคริปต์ซึ่งยอมรับไฟล์เนื่องจากอาร์กิวเมนต์ส่งคืนค่าที่ไม่เป็นศูนย์ มีความคิดวิธีการทำเช่นนี้โดยใช้ 'ค้นหา' หรือเครื่องมือที่คล้ายกัน?
คำตอบ:
find
ของ-exec
การกระทำที่สามารถนำมาใช้สำหรับการนี้:
find . \! -exec yourscript {} \; -print
จะพิมพ์ชื่อของไฟล์ทั้งหมดที่yourscript
ล้มเหลว
-exec
สามารถใช้วิธีนี้เพื่อเปลี่ยนคำสั่งภายนอกที่เหมาะสมเป็นการfind
ทดสอบ
คุณสามารถ จำกัด ไฟล์ที่ได้รับการทดสอบโดยการเพิ่มfind
การทดสอบก่อน-exec
; ตัวอย่างเช่นหากต้องการ จำกัด ผู้สมัครเป็นไฟล์ปกติให้เพิ่ม-type f
:
find . -type f \! -exec yourscript {} \; -print
-o
find . -exec yourscript {} \; -o -print