Cara Menggunakan Perintah Echo di Linux
The echo
perintah sempurna untuk menulis teks diformat ke jendela terminal. Dan itu tidak harus berupa teks statis. Ini dapat mencakup variabel shell, nama file, dan direktori. Anda juga dapat mengarahkan gema untuk membuat file teks dan file log. Ikuti panduan sederhana ini untuk mencari tahu caranya.
Echo Mengulangi Apa yang Anda Katakan Untuk Mengulangi
Zeus senang meninggalkan Gunung Olympus untuk bergaul dengan bidadari cantik. Dalam satu perjalanan, dia memberi tahu seorang peri gunung bernama Echo untuk menghalangi istrinya, Hera, jika dia mengikutinya. Hera memang datang mencari Zeus, dan Echo melakukan semua yang dia bisa untuk membuat Hera tetap mengobrol. Akhirnya, Hera kehilangan kesabarannya dan mengutuk Echo yang malang sehingga dia hanya mengulangi kata-kata terakhir yang diucapkan orang lain. Apa yang Hera lakukan pada Zeus ketika dia menyusulnya adalah dugaan siapa pun.
Dan itu, cukup banyak, echo
banyak dalam hidup. Ini mengulangi apa yang diperintahkan untuk diulang. Itu fungsi yang sederhana, tapi penting. Tanpa echo
, kita tidak akan bisa mendapatkan keluaran yang terlihat dari skrip shell, misalnya.
Meskipun tidak dibebani dengan banyak hal, ada kemungkinan bagus yang echo
memiliki beberapa kemampuan yang tidak Anda ketahui atau Anda lupakan.
gema? gema!
Kebanyakan sistem Linux menyediakan dua versi echo
. Bash shell memiliki bawaannya sendiri echo
, dan ada versi biner yang dapat dieksekusi echo
juga.
Kita bisa melihat dua versi berbeda dengan menggunakan perintah berikut:
ketik echo
whereis echo
The type
perintah memberitahu kita apakah perintah kita lulus untuk itu sebagai argumen adalah builtin shell, sebuah executable biner, alias, atau fungsi. Ini melaporkan kepada kami bahwa itu echo
adalah shell bawaan.
Begitu menemukan jawaban, type
berhenti mencari kecocokan lebih lanjut. Jadi itu tidak memberi tahu kami jika ada perintah lain dengan nama yang sama yang ada di sistem. Tapi itu memberitahu kita mana yang ditemukan pertama kali. Dan itulah yang akan digunakan secara default saat kami mengeluarkan perintah itu.
The whereis
perintah penampilan untuk biner, kode sumber, dan halaman manual untuk perintah kami lulus untuk itu sebagai parameter baris perintah. Itu tidak mencari bawaan shell karena mereka tidak memiliki biner yang dapat dieksekusi terpisah. Mereka adalah bagian integral dari Bash yang dapat dieksekusi.
Laporan whereis
perintah yang echo
merupakan eksekusi biner yang terletak di /bin
direktori.
Untuk menggunakan versi itu, echo
Anda perlu memanggilnya secara eksplisit dengan menyediakan jalur ke file yang dapat dieksekusi di baris perintah:
/ bin / echo --version
Shell builtin tidak tahu apa --version
argumen baris perintah itu, itu hanya mengulanginya di jendela terminal:
echo --version
Semua contoh yang ditampilkan di sini menggunakan versi default echo
, di shell Bash.
Menulis Teks ke Terminal
Untuk menulis string teks sederhana ke jendela terminal, ketik echo
dan string yang Anda inginkan untuk ditampilkan:
echo Nama saya Dave.
Teks itu diulangi untuk kita. Tetapi saat Anda bereksperimen, Anda akan segera menemukan bahwa segala sesuatunya bisa menjadi sedikit lebih rumit. Lihat contoh ini:
echo Nama saya Dave dan saya seorang geek.
Jendela terminal menampilkan >
tanda dan duduk di sana, menunggu. Ctrl + C akan mengembalikan Anda ke command prompt. Apa yang terjadi disana?
Kutipan tunggal atau apostrof dalam kata "Saya" membingungkan echo
. Itu menafsirkan kutipan tunggal itu sebagai awal dari bagian teks yang dikutip. Karena tidak mendeteksi penutupan kutipan tunggal, echo
menunggu masukan lebih banyak. Diharapkan masukan lebih lanjut untuk menyertakan kutipan tunggal yang hilang yang ditunggu-tunggu.
Untuk menyertakan satu kutipan dalam sebuah string, solusi paling sederhana adalah dengan membungkus seluruh string dalam tanda kutip ganda:
echo "Nama saya Dave dan saya seorang geek."
Membungkus teks Anda dengan tanda kutip ganda adalah nasihat umum yang baik. Dalam skrip, ini dengan rapi membatasi parameter yang Anda teruskan echo
. Hal ini membuat membaca — dan men-debug — skrip jauh lebih mudah.
Bagaimana jika Anda ingin menyertakan karakter kutip ganda dalam string teks Anda? Caranya mudah, cukup beri garis miring terbalik \
di depan tanda kutip ganda (tanpa spasi di antara keduanya).
echo "Nama saya Dave dan saya seorang \" geek. \ ""
Ini membungkus kata "geek" dalam tanda kutip ganda untuk kita. Kita akan segera melihat lebih banyak dari karakter dengan garis miring terbalik ini .
Menggunakan Variabel Dengan echo
Sejauh ini, kami telah menulis teks yang telah ditentukan sebelumnya ke jendela terminal. Kita dapat menggunakan variabel with echo
untuk menghasilkan keluaran yang lebih dinamis dan memiliki nilai yang dimasukkan ke dalamnya untuk kita oleh shell. Kita dapat mendefinisikan variabel sederhana dengan perintah ini:
my_name = "Dave"
Variabel yang dipanggil my_name
telah dibuat. Nilai teks "Dave" telah ditetapkan. Kita dapat menggunakan nama variabel dalam string yang kita berikan echo
, dan nilai variabel akan ditulis ke jendela terminal. Anda harus meletakkan tanda dolar $
di depan nama variabel untuk memberi echo
tahu bahwa itu adalah variabel.
Ada peringatan. Jika Anda telah membungkus string Anda dalam tanda kutip tunggal echo
akan memperlakukan semuanya secara harfiah. Untuk memiliki variabel nilai yang ditampilkan, dan bukan nama variabel, gunakan tanda kutip ganda.
echo 'Nama saya $ my_name'
echo "Nama saya $ my_name"
Agak tepat, itu layak diulang:
- Menggunakan tanda kutip tunggal menghasilkan teks yang ditulis ke jendela terminal secara literal .
- Menggunakan tanda kutip ganda menghasilkan variabel yang diinterpretasikan — juga disebut ekspansi variabel — dan nilainya ditulis ke jendela terminal.
TERKAIT: Cara Bekerja dengan Variabel di Bash
Menggunakan Perintah Dengan echo
Kita dapat menggunakan perintah dengan echo
dan memasukkan outputnya ke dalam string yang ditulis ke jendela terminal. Kita harus menggunakan tanda dolar $
seolah-olah perintah itu adalah variabel, dan membungkus seluruh perintah dalam tanda kurung.
Kami akan menggunakan perintah tanggal. Salah satu tipnya adalah menggunakan perintah itu sendiri sebelum Anda mulai menggunakannya dengan echo
. Dengan begitu, jika ada yang salah dengan sintaks perintah Anda, Anda mengidentifikasinya dan memperbaikinya sebelum Anda memasukkannya ke dalam echo
perintah. Kemudian, jika echo
perintah tidak melakukan apa yang Anda harapkan, Anda akan tahu masalahnya pasti ada pada echo
sintaks karena Anda sudah membuktikan sintaks perintah.
Jadi, coba ini di jendela terminal:
tanggal +% D
Dan, puas bahwa kami mendapatkan apa yang kami harapkan dari perintah tanggal, kami akan mengintegrasikannya ke dalam sebuah echo
perintah:
echo "Tanggal hari ini adalah: $ (tanggal +% D)"
Perhatikan bahwa perintah berada di dalam tanda kurung dan tanda dolar $
berada tepat sebelum tanda kurung pertama.
Memformat Teks Dengan echo
Opsi -e
(aktifkan pelarian garis miring terbalik) memungkinkan kita menggunakan beberapa karakter dengan garis miring terbalik untuk mengubah tata letak teks. Ini adalah karakter dengan escape backslash yang dapat kita gunakan:
- \ a : Alert (secara historis dikenal sebagai BEL). Ini menghasilkan suara peringatan default.
- \ b : Menulis karakter spasi mundur.
- \ c : Mengabaikan keluaran lebih lanjut.
- \ e : Menulis karakter pelarian.
- \ f : Menulis karakter umpan formulir.
- \ n : Menulis baris baru.
- \ r : Menulis kembali kereta.
- \ t : Menulis tab horizontal.
- \ v : Menulis tab vertikal.
- \\ : Menulis karakter garis miring terbalik.
Mari kita gunakan beberapa dari mereka dan lihat apa yang mereka lakukan.
echo -e "Ini adalah baris teks yang panjang \ ndibagi menjadi tiga baris \ ndengan \ ttab \ ton \ t \ ttiga \ tline"
Teks dibagi menjadi baris baru di mana kita telah menggunakan \n
karakter dan tab disisipkan di tempat kita menggunakan \t
karakter.
echo -e "Ini \ vare \ vvertical \ vtabs"
Seperti \n
karakter baris baru, tab vertikal \v
memindahkan teks ke baris di bawahnya. Namun, tidak seperti \n
karakter baris baru, \v
tab vertikal tidak memulai baris baru di kolom nol. Ini menggunakan kolom saat ini.
The \b
karakter backspace memindahkan kursor kembali satu karakter. Jika ada lebih banyak teks yang akan ditulis ke terminal, teks itu akan menimpa karakter sebelumnya.
echo -e "123 \ b4"
"3" ditimpa oleh "4".
Karakter \r
carriage return menyebabkan echo
untuk kembali ke awal baris saat ini dan untuk menulis teks lebih lanjut dari kolom nol.
echo -e "123 \ r456"
Karakter "123" diganti dengan karakter "456".
The \a
karakter peringatan akan menghasilkan “bip.” Terdengar Ini menggunakan suara peringatan default untuk tema Anda saat ini.
echo -e "Tidurlah \ a"
Opsi -n
(tidak ada baris baru) bukanlah urutan pelolosan garis miring terbalik, tetapi ini memengaruhi kosmetik tata letak teks, jadi kita akan membahasnya di sini. Ini mencegah echo
dari menambahkan baris baru ke akhir teks. Prompt perintah muncul langsung setelah teks yang ditulis ke jendela terminal.
echo -n "tidak ada baris baru terakhir"
Menggunakan echo Dengan File dan Direktori
Anda dapat menggunakan echo
sebagai versi orang miskin ls
. Pilihan Anda sedikit dan jauh antara saat Anda menggunakan echo
seperti ini. Jika Anda membutuhkan segala jenis kesetiaan atau kontrol yang baik, Anda lebih baik menggunakan ls
dan banyak pilihannya.
Perintah ini mencantumkan semua file dan direktori di direktori saat ini:
echo *
Perintah ini mencantumkan semua file dan direktori di direktori saat ini yang namanya dimulai dengan "D":
echo D *
Perintah ini mencantumkan semua file ".desktop" di direktori saat ini:
echo * .desktop
Ya. Ini tidak mempermainkan echo
kekuatan. Gunakan ls
.
Menulis ke File dengan echo
Kita dapat mengarahkan output dari echo
dan membuat file teks atau menulis ke file teks yang ada.
Jika kita menggunakan >
operator redirection, file dibuat jika tidak ada. Jika file memang ada, keluaran dari echo
ditambahkan di awal file, menimpa konten sebelumnya.
Jika kita menggunakan >>
operator redirection, file dibuat jika tidak ada. Output dari echo
ditambahkan ke akhir file dan tidak menimpa konten file yang ada.
echo "Membuat file baru." > sample.txt
echo "Menambahkan ke file." >> sample.txt
cat sample.txt
File baru dibuat dengan perintah pertama, dan teks dimasukkan ke dalamnya. Perintah kedua menambahkan sebaris teks ke bagian bawah file. The cat
perintah menampilkan isi dari file ke jendela terminal.
Dan tentu saja, kami dapat menyertakan variabel untuk menambahkan beberapa informasi berguna ke file kami. Jika file tersebut adalah file log, kami mungkin ingin menambahkan stempel waktu ke dalamnya. Kita bisa melakukannya dengan perintah selanjutnya.
Perhatikan tanda kutip tunggal di sekitar parameter untuk date
perintah tersebut. Mereka mencegah ruang antara parameter diinterpretasikan sebagai akhir dari daftar parameter. Mereka memastikan parameter diteruskan dengan date
benar.
echo "Logfile dimulai: $ (date + '% D% T')"> logfile.txt
kucing logfile.txt
Logfile kami dibuat untuk kami dan cat
menunjukkan kepada kami bahwa cap tanggal dan cap waktu ditambahkan ke dalamnya.
TERKAIT: Apa itu stdin, stdout, dan stderr di Linux?
Itu Repertoar Gema
Perintah sederhana, tetapi sangat diperlukan. Jika tidak ada, kita harus menemukannya.
Kejahatan Zeus memang bermanfaat.