Dikutip dari halaman manual bash, bagian Command Substitution
:
Baris baru yang disematkan tidak dihapus, tetapi mereka dapat dihapus selama pemisahan kata.
Sedikit lebih jauh, bagian yang sama:
Jika substitusi muncul dalam tanda kutip ganda, pemisahan kata dan perluasan pathname tidak dilakukan pada hasilnya.
Itu sebabnya echo "$(cat /etc/passwd)"
berhasil.
Selain itu, orang harus sadar, bahwa penggantian perintah dengan spesifikasi POSIX menghilangkan baris baru:
$ echo "$(printf "one\ntwo\n\n\n")"
one
two
Dengan demikian, mengeluarkan file melalui $(cat file.txt)
dapat menyebabkan hilangnya baris baru, dan itu bisa menjadi masalah jika integritas file keseluruhan adalah prioritas.