Fungsi Bash printf: 7 Contoh untuk Linux

Fungsi Bash printf: 7 Contoh untuk Linux

Sekiranya anda telah menggunakan shell Bash untuk jangka masa yang panjang, anda mungkin tahu cara mencetak rentetan di terminal Linux menggunakan perintah echo. Akan tetapi, perintah printf menjadikan pencetakan teks dengan pemformatan tertentu menjadi lebih mudah.





Hari ini kita akan belajar bagaimana menggunakan fungsi printf untuk meningkatkan kemahiran skrip Bash kita.





Apakah Fungsi Bash printf?

Seperti namanya, printf adalah fungsi yang mencetak rentetan teks yang diformat. Ini bermaksud anda boleh menulis struktur rentetan (format) dan kemudian mengisinya dengan nilai (argumen).





Sekiranya anda biasa dengan bahasa pengaturcaraan C / C ++, anda mungkin sudah tahu bagaimana printf berfungsi. Printf dalam shell Bash sangat serupa, tetapi ia mempunyai beberapa perbezaan kecil.

Ketahui Lebih Lanjut: Laman Web Terbaik untuk Bermula dengan Pengaturcaraan C ++



Cara Menggunakan printf di Bash Shell

Sintaks asas untuk printf adalah:

printf format [argument]

Printf akan mencetak format tali semasa melaksanakan kebocoran ( ) dan arahan ( % ) melalui penggunaan yang ditentukan hujah . Perhatikan output arahan berikut:





$ printf 'Hello, %s' world
Hello, world

Printf mengambil dunia hujah dan menggantikan % s watak dalam rentetan yang ditentukan dengannya.

Anda mungkin menyedari bahawa selepas output, Bash tidak membuat baris baru untuk anda. Tidak seperti perintah echo, printf tidak akan menganggap anda mahukan baris baru setelah output dicetak. Oleh itu, anda perlu menggunakan watak baris baru n dalam setiap contoh.





Untuk mencetak rentetan dan kemudian beralih ke baris baru, ketik printf 'Helo, dunia n' .

Hello, world

Penting untuk diingat bahawa printf akan berusaha menggunakan semula format untuk semua hujah anda. Anda boleh menggunakannya untuk keuntungan anda, tetapi jika anda tidak berhati-hati, anda boleh memperoleh hasil seperti ini:

$ printf 'My name is %s ' Jordan Gloor
My name is Jordan My name is Gloor

Anda juga harus sedar bahawa jika argumen tidak ada, printf akan menafsirkan arahan sebagai 0 (untuk nombor) dan batal (untuk tali).

$ printf 'Hello, %s.'
Hello, .

Sekarang setelah anda mengetahui bagaimana skrip Bash dengan printf di Linux berfungsi, anda sudah bersedia untuk mula menggunakannya dalam arahan anda.

Linux Bash printf Contoh

Printf mempunyai banyak penentu format yang boleh anda gunakan dalam skrip anda. Tetapi hari ini kita hanya akan merangkumi beberapa perkara biasa untuk fungsi tersebut.

1. Format Output Dengan Rentetan

Untuk memformat output dengan rentetan teks, gunakan % s arahan.

$ printf '%s is one of the largest online %s.' MUO 'technology publications'
MUO is one of the largest online technology publications.

2. Format String Output Dengan Perpuluhan

Untuk memformat rentetan dengan bilangan bulat, anda dapat menggunakan % d arahan untuk perpuluhan yang ditandatangani.

$ printf 'MUO was founded in %d.' 2007
MUO was founded in 2007.

Perhatikan bahawa jika anda ingin menggunakan perpuluhan tanpa tanda dalam output, anda harus menggunakan % u arahan sebaliknya.

cara memperbaiki trackpad pada macbook pro

Berkaitan: Apa maksud 'Bash' di Linux?

3. Fungsi Matematik Output Menggunakan printf

Memformat fungsi matematik dengan perintah printf adalah mudah. Cukup letakkan ungkapan anda dalam tanda kurung seperti yang biasa anda lakukan di Bash, dan tentukan ungkapan itu dalam senarai argumen.

$ printf '1 + 1 is %d' $((1+1))
1 + 1 is 2

4. Format Nombor Perenambelasan

Sekiranya anda perlu memformat nombor heksadesimal, gunakan % x untuk huruf kecil dan % X untuk huruf besar.

$ printf %X 1000
3E8C

Untuk mencetak tarikh dan waktu semasa, anda boleh menggabungkan printf dengan Tarikh perintah dan lulus arahan berikut.

$ printf '%(%m-%d-%Y %H:%M:%S)T' $(date +%s)
03-26-2021 15:27:57

Anda dapat melihat penentu format untuk bulan, hari, tahun, jam, minit, dan kedua dalam output yang disebutkan di atas.

6. Format Rentetan Dengan Watak Unicode

Untuk mencetak watak Unicode dengan printf, gunakan awak melarikan diri untuk Unicode 16-bit dan U untuk Unicode 32-bit.

Sebagai contoh, anda boleh mencetak hak cipta simbol dengan arahan berikut:

$ printf 'u00A9'
©

7. Tambah Jarak ke Output

Anda boleh memformat rentetan dengan jarak dengan menentukan, sebelum penentu arahan, sebilangan kecil aksara dicetak. Watak yang tidak digunakan akan diisi dengan ruang.

Contohnya, menaip printf '% s:% 5d n' 'Nilai 1' 25 'Nilai 2' 120 akan mengeluarkan:

Value 1: 25
Value 2: 120

The % 5d penentu format dalam output menunjukkan bahawa rentetan yang diformat akan mengandungi minimum lima aksara. Oleh kerana 25 hanya mempunyai dua digit, spasi ditambahkan pada aksara yang tinggal.

Sekiranya anda lulus nombor negatif sebagai lebar, arahan itu akan dibenarkan-kiri dan bukannya dibenarkan-kanan.

$ printf '%-10s: %d ' 'Circles' 25 'Boxes' 120
Circles : 25 Boxes : 120

Sekiranya anda ingin membuat pemboleh ubah lebar, anda boleh memasukkan tanda bintang dan bukan nombor, dan printf akan menggunakan nombor seterusnya yang terdapat dalam senarai argumen.

$ printf '%*s: %d ' -10 'Circles' 25 -10 'Boxes' 120
Circles : 25 Boxes : 120

Berkaitan: Semua yang Anda Perlu Tahu Mengenai Bash Untuk Gelung di Linux

Mempelajari Perintah printf Linux

Dengan perintah printf di tali pinggang utiliti skrip Bash anda, anda sudah bersedia untuk memulakan percetakan rentetan yang kompleks dan berbeza di terminal anda. Semasa anda mengembangkan skrip Bash anda, penting untuk memastikan anda bekerja dalam persekitaran yang paling produktif. Ini bukan sahaja dapat meningkatkan kemahiran baris perintah anda tetapi juga meningkatkan aliran kerja anda secara umum.

Berkongsi Berkongsi Tweet E-mel 10 Distro Linux Terbaik untuk Pembangun

Bersedia untuk memulakan pembangunan pada sistem operasi sumber terbuka? Berikut adalah distro Linux terbaik untuk pengaturcaraan.

permainan android percuma terbaik tanpa pembelian aplikasi
Baca Seterusnya Topik-topik yang berkaitan
  • Linux
  • Linux Bash Shell
  • Perintah Linux
Mengenai Pengarang Jordan Gloor(51 Artikel Diterbitkan)

Jordan adalah seorang penulis kakitangan di MUO yang bersemangat menjadikan Linux boleh diakses dan bebas tekanan untuk semua orang. Dia juga menulis panduan mengenai privasi dan produktiviti.

Lagi Dari Jordan Gloor

Langgan buletin kami

Sertailah buletin kami untuk mendapatkan petua, ulasan, ebook percuma, dan tawaran eksklusif!

Klik di sini untuk melanggan