Saya mendapat absebagai output untuk kode Anda di komputer saya, sebagaimana mestinya: Ini menggantikan semuanya kecuali adengan b, dan itu termasuk baris baru dari gema . Saya tidak tahu mengapa Anda mendapatkannya e.
dirkt
@ techraf Maaf saya membuat kesalahan ketik - hasilnya memang ab. Terima kasih atas perhatian Anda.
Mulligan
Jawaban:
3
tr perintah memproses semua karakter, termasuk yang tidak dicetak.
echo dalam contoh Anda menghasilkan output yang terdiri dari dua karakter:
a
karakter baris baru ( \n)
Dalam panggilan Anda, Anda diperintahkan truntuk mengganti semua karakter yang melengkapi a(dengan kata sederhana: selain a) dengan b, jadi:
itu meninggalkan akarakter utuh
mengganti karakter baris baru dengan b.
Pertimbangkan mengujinya dengan printf(yang tidak secara implisit menambahkan baris baru ke akhir, seperti echohalnya)
Ini menghasilkan input yang sama dengan tras echo, jadi outputnya juga sama:
a
danb
sebagaitr
argumen, tetapi masuke
ke output?ab
sebagai output untuk kode Anda di komputer saya, sebagaimana mestinya: Ini menggantikan semuanya kecualia
denganb
, dan itu termasuk baris baru dari gema . Saya tidak tahu mengapa Anda mendapatkannyae
.Jawaban:
tr
perintah memproses semua karakter, termasuk yang tidak dicetak.echo
dalam contoh Anda menghasilkan output yang terdiri dari dua karakter:a
\n
)Dalam panggilan Anda, Anda diperintahkan
tr
untuk mengganti semua karakter yang melengkapia
(dengan kata sederhana: selaina
) denganb
, jadi:a
karakter utuhb
.Pertimbangkan mengujinya dengan
printf
(yang tidak secara implisit menambahkan baris baru ke akhir, sepertiecho
halnya)Ini menghasilkan input yang sama dengan
tr
asecho
, jadi outputnya juga sama:Dibandingkan dengan:
Dan:
sumber