Untuk beberapa sesi shell saya ingin dapat mencetak bendera peringatan jika variabel shell tidak diatur dan diekspor.
Cukup mudah untuk melakukan hal seperti ini untuk mencetak "Kesalahan" pada prompt jika SET_MEtidak disetel atau null.
test_var () { test -z "$1" && echo Error; }
PS1='$(test_var "$SET_ME") \$ '
Namun ini gagal menandai jika saya mengatur SET_MEtanpa mengekspornya, yang merupakan kesalahan yang ingin saya deteksi. Kurang dari sesuatu seperti $(bash -c 'test -z "$SET_ME" && echo Error;')atau menangkap output export, apakah ada pemeriksaan sederhana yang dapat saya lakukan untuk menguji apakah SET_MEtelah diekspor?
Solusi non-POSIX, bash-only sepenuhnya dapat diterima.
typesetatribut lain .