चूंकि मैंने printfएक टिप्पणी में सिफारिश की है, मुझे शायद इसके उपयोग के कुछ उदाहरण देना चाहिए (हालांकि एक उपयोग संदेश को प्रिंट करने के लिए, मैं डेनिस या क्रिस के उत्तरों का उपयोग करने की अधिक संभावना होगी)। printfकी तुलना में उपयोग करने के लिए थोड़ा अधिक जटिल है echo। इसका पहला तर्क एक प्रारूप स्ट्रिंग है, जिसमें हमेशा (जैसे \n) व्याख्या की जाती है; इसमें प्रारूप निर्देश भी शामिल हो सकते हैं , जो इस बात को नियंत्रित करते हैं कि इसमें कोई अतिरिक्त तर्क कहाँ और कैसे शामिल हैं। उपयोग संदेश के लिए इसका उपयोग करने के दो अलग-अलग तरीके हैं:%
सबसे पहले, आप संपूर्ण संदेश को प्रारूप स्ट्रिंग में शामिल कर सकते हैं:
printf "usage: up [--level <n>| -n <levels>][--help][--version]\n\nReport bugs to: \nup home page: \n"
ध्यान दें कि इसके विपरीत echo, आपको अंतिम नई पंक्ति को स्पष्ट रूप से शामिल करना चाहिए। साथ ही, यदि संदेश में किसी भी %वर्ण को शामिल करने के लिए होता है , तो उन्हें लिखा जाना चाहिए %%। यदि आप बगरेपोर्ट और मुखपृष्ठ पतों को शामिल करना चाहते हैं, तो उन्हें स्वाभाविक रूप से जोड़ा जा सकता है:
printf "usage: up [--level <n>| -n <levels>][--help][--version]\n\nReport bugs to: %s\nup home page: %s\n" "$bugreport" "$homepage"
दूसरा, आप एक अलग लाइन पर प्रत्येक अतिरिक्त तर्क को प्रिंट करने के लिए प्रारूप स्ट्रिंग का उपयोग कर सकते हैं:
printf "%s\n" "usage: up [--level <n>| -n <levels>][--help][--version]" "" "Report bugs to: " "up home page: "
इस विकल्प के साथ, बगरेपोर्ट और मुखपृष्ठ पते जोड़ना काफी स्पष्ट है:
printf "%s\n" "usage: up [--level <n>| -n <levels>][--help][--version]" "" "Report bugs to: $bugreport" "up home page: $homepage"
echo >&2 ...