Perbedaan antara 'echo' dan 'echo -e' [ditutup]


25

Apa perbedaan antara echodan echo -e? Kutipan ("" atau '') manakah yang harus digunakan dengan perintah gema? yaitu: echo "Print statement"atau echo 'Print statement'? Juga, apa saja opsi yang tersedia yang dapat digunakan bersama echo?


3
Shell apa? echo -etidak didefinisikan oleh POSIX dan mungkin bervariasi berdasarkan shell.
jordanm

Apakah ini menjawab pertanyaan Anda? unix.stackexchange.com/questions/65803/…
dhag

2
gunakan man echountuk membaca manual untuk echo.
pengasuh

gema tidak mengeksekusi argumennya sebagai perintah, itu hanya ... gema mereka
Anthon

Jawaban:


33

echodengan sendirinya menampilkan satu baris teks. Ini akan mengambil apa pun dalam "..."dua tanda kutip berikut , secara harfiah, dan hanya mencetak apa adanya. Namun dengan echo -eAnda membuat echountuk mengaktifkan lolos backslash. Jadi dengan mengingat hal ini di sini adalah beberapa contoh

INPUT: echo "abc\n def \nghi" 
OUTPUT:abc\n def \nghi

INPUT: echo -e "abc\n def \nghi"
OUTPUT:abc
 def 
ghi

Catatan: \nadalah saluran baru, yaitu carriage return. Jika Anda ingin tahu urutan apa yang dikenali berdasarkan echo -ejenis di man echoterminal Anda.


2
echosudah terpasang di sebagian besar shell. man echoakan suka mendokumentasikan echoperintah mandiri sebagai gantinya.
Stéphane Chazelas

Anda menggambarkan perilaku GNU echoatau shell GNU echosaat tidak dalam mode kepatuhan Unix. Di tempat lain, perilaku biasanya akan berbeda.
Stéphane Chazelas

3

Di sebagian besar SHELL echotidak dapat mengambil urutan escape ( \n \t). Dimana echo -ebisa

echo -e " This is \n an \t example"

Kutipan tunggal dan kutipan ganda sebagian besar untuk menangani masalah interpolasi. Anda dapat menemukan detail lebih lanjut di sini, Mengapa gema mengabaikan karakter kutipan saya?


Itu sebaliknya. Pada kebanyakan shell (ksh88, ksh93, pdksh, mksh, Bourne, zsh, dash, bash, dan sh dari semua sistem yang sesuai dengan Unix, beberapa di antaranya seperti ksh93 atau bash hanya di beberapa lingkungan) echomemang memperluas urutan pelarian. Sebuah echoimplementasi yang menerima -etidak POSIX compliant.
Stéphane Chazelas
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.