-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पूर्वगामी (या पहले मामले में विकल्प ) का नाम नहीं है ।
दुर्भाग्य से यह मानक नहीं है और न ही पोर्टेबल है।