Kode berikut paling menggambarkan situasi. Mengapa baris terakhir tidak menghasilkan char baris baru yang tertinggal? Output setiap baris ditampilkan dalam komentar. Saya menggunakan bash GNU, versi 4.1.5
echo -n $'a\nb\n' | xxd -p # 610a620a
x=$'a\nb\n' ; echo -n "$x" | xxd -p # 610a620a
echo -ne "a\nb\n" | xxd -p # 610a620a
x="$(echo -ne "a\nb\n")" ; echo -n "$x" | xxd -p # 610a62
tmp=$(somecommand; echo a)
... Ini sudah pasti mengarahkan poinnya ke rumah ... Sampai saya melihat contohnya, kecenderungan saya masih akan digunakan echo -n a
... tapi, tentu saja !, tidak perlu itu -n
, karena Substitusi Perintah akan menghapus baris tambahan yang diperkenalkan di awal! ... terima kasih ...
tmp=$(somecommand; echo a); tmp=${tmp%a}