> echo "hi"
hi
> VAR='echo "hi"'
> $VAR
"hi"
Mengapa output dari perintah di atas berbeda?
Hal serupa terjadi dengan kutipan tunggal:
> VAR="echo 'hi'"
> $VAR
> 'hi'
at) adalah kode. Adakah tips tentang cara yang lebih aman untuk mengatur / mengumpulkan kode yang akan diberikan at?
atmengambil shsintaks sebagai input. Jadi menghasilkan input untuk atberarti menghasilkan shsintaks yang valid dan dikutip dengan benar dari input sewenang-wenang, yang tidak sepele, jadi saya akan mencoba menghindarinya jika memungkinkan. Akan sangat membantu jika Anda bisa memberikan sedikit lebih banyak detail tentang apa yang ingin Anda capai.
atuntuk "waktu" yang diberikan, dan memberitahu atuntuk menjalankan perintah dzen2. dzen2mengambil "pesan" dari stdin, dan juga menggunakan beberapa parameter statis lainnya. Kesulitannya adalah saya perlu menyalurkan parameter "pesan" dari pengguna ke dzen2perintah, tapi saya tidak benar-benar menjalankan dzen2sendiri, saya mengatakan atuntuk melakukannya.
evalmerupakan ladang ranjau dari lubang keamanan potensial yang harus Anda tapak dengan hati