Karena saya merekomendasikan printfdalam komentar, saya mungkin harus memberikan beberapa contoh penggunaannya (walaupun untuk mencetak pesan penggunaan, saya lebih cenderung menggunakan jawaban Dennis atau Chris). printfsedikit lebih kompleks untuk digunakan daripada echo. Argumen pertama adalah string format, di mana lolos (seperti \n) selalu ditafsirkan; itu juga dapat berisi arahan format yang dimulai dengan %, yang mengontrol di mana dan bagaimana argumen tambahan dimasukkan di dalamnya. Berikut adalah dua pendekatan berbeda untuk menggunakannya untuk pesan penggunaan:
Pertama, Anda bisa memasukkan seluruh pesan dalam string format:
printf "usage: up [--level <n>| -n <levels>][--help][--version]\n\nReport bugs to: \nup home page: \n"
Perhatikan bahwa tidak seperti itu echo, Anda harus memasukkan baris akhir final secara eksplisit. Juga, jika pesan tersebut mengandung %karakter, mereka harus ditulis sebagai %%. Jika Anda ingin memasukkan laporan bug dan alamat beranda, mereka dapat ditambahkan secara alami:
printf "usage: up [--level <n>| -n <levels>][--help][--version]\n\nReport bugs to: %s\nup home page: %s\n" "$bugreport" "$homepage"
Kedua, Anda bisa menggunakan string format untuk membuatnya mencetak setiap argumen tambahan pada baris terpisah:
printf "%s\n" "usage: up [--level <n>| -n <levels>][--help][--version]" "" "Report bugs to: " "up home page: "
Dengan opsi ini, menambahkan laporan bug dan alamat beranda cukup jelas:
printf "%s\n" "usage: up [--level <n>| -n <levels>][--help][--version]" "" "Report bugs to: $bugreport" "up home page: $homepage"
echo >&2 ...