GNU/Linux >> Belajar Linux >  >> Linux

Cara Menggunakan Perintah gema Tanpa Baris Baru

Perintah echo adalah cara praktis untuk mencetak apa pun dalam skrip shell.

Secara default, selalu menambahkan karakter baris baru. Jadi, jika Anda menjalankan beberapa perintah gema, setiap output ditampilkan pada baris baru.

Tapi ini bisa merepotkan dalam situasi di mana Anda perlu mencetak dengan perintah echo tetapi tanpa baris baru.

Bayangkan diri Anda mencoba mencetak deret Fibonacci:1, 1, 2, 3, 5, 8, 13, 21, 34, 55

Anda dapat menggunakan -n tandai perintah echo untuk mencetak tanpa baris baru:

echo -n "Hello World"

Anda akan melihat bahwa prompt ditampilkan di baris yang sama segera setelah Hello World sekarang.

Mari kita lihat lebih dalam.

Mencetak perintah gema tanpa baris baru

Mari kita ambil loop for sederhana yang mencetak konten array dalam skrip bash dan memeriksa outputnya.

$ bash_array=(1 2 3 4)

$ for i in ${bash_array[@]}; do
    echo $i
done
1
2
3
4

Seperti yang Anda lihat, setiap kali perintah echo dijalankan, output ditampilkan pada baris baru. Kadang-kadang itu yang Anda inginkan, di lain waktu, Anda ingin output berlanjut di baris yang sama tanpa memulai di baris baru.

Memenuhi bendera "-n"

Implementasi bash dari perintah echo biasanya menambahkan "\n" (karakter pelarian untuk menandakan baris baru) ke output. Bendera "-n" tidak menambahkan "\n" ke output.

$ bash_array=(1 2 3 4 5 6 7 8)

$ for i in ${bash_array[@]}; do
    echo -n $i
done
12345678

Seperti yang Anda lihat, semua nomor sekarang ditampilkan dalam satu baris. Ini berarti setiap kali perintah echo dijalankan, perintah tersebut tidak menghasilkan baris baru.

echo -n tidak berfungsi. Sekarang apa?

Dalam beberapa kasus, menggunakan echo -n juga mencetak -n karakter alih-alih mencetak teks tanpa baris baru.

Itu mungkin jika ada implementasi terpisah dari perintah echo oleh shell yang Anda gunakan.

Bingung? Beberapa distribusi dan shell mungkin memiliki implementasi sendiri dari beberapa perintah shell bawaan. echo adalah salah satu perintah tersebut.

Berikut adalah beberapa hal yang dapat Anda coba.

Tambahkan karakter shebang diikuti dengan /bin/bash untuk memastikan bahwa skrip shell Anda menggunakan shell bash.

#!/bin/bash

Jika itu tidak berhasil, Anda dapat mencoba menggunakan perintah printf alih-alih echo.

Secara default, printf tidak menambahkan karakter baris baru:

printf "Something without newline"

Anda harus secara eksplisit memberikan karakter baris baru \n:

printf "Something with newline\n"

Perintah printf berperilaku seperti perintah printf di C dan Anda dapat menggunakannya untuk mencetak output berformat yang lebih rumit.

Perintah printf memiliki perilaku yang jauh lebih konsisten. echo baik-baik saja untuk hal-hal sederhana, tetapi saya menyarankan menggunakan printf untuk hal-hal yang lebih rumit.

Saya harap tutorial sederhana ini membantu Anda dalam mengontrol perilaku baris baru dalam skrip bash.


Linux
  1. Cara menggunakan perintah grep Linux

  2. Cara menggunakan perintah history di Linux

  3. Cara menggunakan Perintah Su di Linux

  1. Cara Menggunakan Perintah sejarah Linux

  2. Bagaimana cara menggunakan perintah nama dasar?

  3. Cara Menggunakan Perintah Layar Linux

  1. Cara Menggunakan Telnet Di Windows

  2. Cara Menggunakan Perintah Disown di Linux

  3. Cara Menggunakan Perintah SS Linux