Jawaban:
Untuk pertanyaan judul Anda: Tidak. Mendapatkan stdin
dari isi file ( pengalihan input ) tidak sama dengan memipis satu output program ke input program lain.
Tapi, karena Anda cat
benar - benar hanya mencetak konten file, hasilnya secara efektif sama dalam contoh itu.
Tetapi bahkan berikut ini saja memberikan hasil yang sangat berbeda:
$ cat * | sort
$ sort < *
Jika ada lebih dari satu file yang cocok, yang terakhir akan menghasilkan
-bash: *: ambiguous redirect
karena itu tidak sefleksibel yang sebelumnya, yang akan menampung semua file yang cocok, dan menyalurkannya sebagai input sort
.
sort < txtfile
jauh lebih efisien daripada cat txtfile | sort
?
sort *
? Tidak ada penggunaan kucing yang tidak berguna, tidak ada penggunaan tipuan yang tidak berguna, terpendek untuk mengetik, dan paling mudah untuk dipikirkan, dan saya percaya GNU sort akan memperlakukan Anda dengan optimasi skalabilitas untuk file yang sangat besar (tidak begitu yakin tentang itu - setengah mengingat sesuatu di sana)