Katakanlah saya memiliki beberapa data konfigurasi dalam file config
. Untuk kenyamanan, saya ingin memuat data ini ke dalam variabel shell CONFIG_DATA
,.
Jelas saya bisa melakukannya:
CONFIG_DATA="$(cat config)"
Tapi ini terasa seperti tidak bergunacat
bagiku. Apakah ini satu-satunya cara untuk melakukan ini? Atau ada cara yang lebih elegan untuk melakukannya?
Jawaban harus lebih suka POSIX tetapi dapat menggunakan shell apa pun.
shell-script
shell
io-redirection
strugee
sumber
sumber
Jawaban:
Di Bash dan Z shell, setidaknya, ada cara yang lebih cepat:
Mengutip dari halaman manual shell Bourne Again:
sumber
$(<file)
jauh lebih jarang, sehingga mungkin menghasilkan lebih banyak WTF; dan peningkatan kecepatan dari operasi ini, jika konfigurasi tersebut akan dimuat ke variabel, mungkin dapat diabaikanfor i in $(cat file); do ...
adalah yang lain. Bahwa mereka biasa bukan alasan untuk terus menggunakan alat yang buruk. Yang tidak mengatakan bahwa penggunaan khusus kucing ini terlalu buruk, saya tidak yakin apakah ada cara yang lebih portabel. Hanya mengatakan itu biasa & akrab! = Bagus.