-print
เป็นค่าเริ่มต้นการดำเนินการ บางfind
ภาคจะถือว่าเป็นกระทำตรงข้ามกับฟิลเตอร์หรือเงื่อนไข ตัวอย่างเช่น-type f
ไม่ใช่การกระทำ -exec
เป็นการกระทำแม้ว่าจะสามารถใช้เป็นเงื่อนไขได้ก็ตาม
การดำเนินการรวม-print
, และ-exec
-ok
บางfind
การใช้งานที่มีภาคการดำเนินการอื่น ๆ ที่ไม่ได้มาตรฐานเช่น-print0
, -printf
, -execdir
, -okdir
, -ls
...
find files <some-predicates>
ในกรณีที่ไม่มีของ<some-predicates>
มีการกระทำที่เทียบเท่ากับ:
find files \( <some-predicates> \) -print
(สังเกตเครื่องหมายวงเล็บด้านบนซึ่งมีความสำคัญหากมี-o
ตัวดำเนินการบางตัว)
เมื่อมีข้อสงสัยที่ดีที่สุดคือการใช้-print
อย่างชัดเจน (หรือ-exec printf '%s\0' {} +
(หรือ-print0
ถ้ามี)) เพื่อให้สามารถประมวลผลเอาท์พุท)
การ-print
กระทำเริ่มต้นจะถูกระบุโดย POSIX การใช้งานแบบเก่าบางอย่างfind
ต้องมีความชัดเจน-print
แต่โดยทั่วไปจะไม่พบในไวด์เว็บในปัจจุบัน
นอกจากนี้โปรดทราบว่าfind
การใช้งานบางอย่างอนุญาตให้ละเว้นfiles
ซึ่งในกรณีนี้พวกเขาเริ่มต้นการค้นหาในไดเรกทอรีปัจจุบัน นั่นคือสำหรับพวกเขา
find
เทียบเท่ากับ
find .
find . -print
อย่างไรก็ตามมันไม่ได้เป็นมาตรฐานดังนั้นจึงควรหลีกเลี่ยงที่ดีที่สุด
ในตอนท้ายของสเปกตรัม (และมีประโยชน์) ที่ละเอียดมากขึ้นfind
การใช้งานบางอย่างยังอนุญาตให้ส่งผ่านพา ธ ไฟล์เป็นอาร์กิวเมนต์ไปยัง-f
ตัวเลือกดังเช่น:
find -f "$file1" -f "$file2" -print
มันเป็นfind
การนำไปใช้งานเพียงอย่างเดียวที่อนุญาตให้ส่งผ่านพา ธ ไฟล์ไปที่find
ใดก็ได้ การใช้งานอื่นไม่สามารถยอมรับพา ธ ไฟล์เช่น!
หรือ-print
... ดังนั้นfind "$file" -print
(หรือแม้กระทั่งfind -- "$file" -print
) ถือว่า$file
ไม่ใช่ชื่อของเพรดิเคตfind
(หรือตัวเลือกในกรณีแรก)
น่าเสียดายที่ไม่ได้มาตรฐานหรือพกพาอย่างใดอย่างหนึ่ง