যেহেতু আমি 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 ...