Saya belum pernah bertemu shell Bourne-style yang diizinkan -
dalam nama variabel. Hanya huruf ASCII (dari kedua kasus), _
dan digit yang didukung, dan karakter pertama tidak boleh digit.
Jika Anda memiliki program yang memerlukan variabel lingkungan yang tidak cocok dengan pembatasan shell, jalankan dengan env
program.
env 'strange-name=some value' myprogram
Perhatikan bahwa beberapa shell (mis. Dash modern , mksh, zsh) menghapus variabel yang namanya tidak mereka sukai dari lingkungan. ( Shellshock telah membuat orang lebih berhati-hati tentang nama-nama variabel lingkungan, sehingga pembatasan cenderung menjadi lebih ketat dari waktu ke waktu, tidak lebih permisif.) Jadi, jika Anda perlu meneruskan variabel yang namanya berisi karakter khusus untuk suatu program, berikan secara langsung, tanpa shell di antaranya ( env 'strange-name=some value' sh -c'…; myprogram'
mungkin atau mungkin tidak berfungsi).