Tcsh kullanmak istemiyorum, ancak maalesef bu durumda bir seçeneği yok. Yani lütfen "başka bir kabuk kullan" cevabı yok!Bir ortam değişkeni ya bozuk ya da boş dizeye ayarlanmış mı kontrol edilir?
Şu anda bir ortam değişkeninin her ikisinin de ayarlanmış olup olmadığını kontrol etmeye çalışıyorum ve kullanışlı bir işe ayarlanmış. Yani ne yapmak istiyorum şudur:
if ($?HAPPYVAR && $HAPPYVAR != "") then
... blah...
else if ($?SADVAR && $SADVAR != "") then
... more blah ...
endif
sorun $ HAPPYVAR tanımlı değilse (ortam değişkeni yedek erken olur çünkü), bu ifadenin ikinci yarısında dışarı hata olacaktır. İç içe geçmiş ifadeler kullanabilirdim, ama sonra da “başka” çalışmamın doğru bir şekilde çalışmasını sağlayacak problemlerim olurdu ("... blah ..." olsun ya da olmasın).
Bunu yapmak için güzel, temiz bir çözüm olan var mı?
Aynı kavram üzerinde çalışırken, komutumun blokta işlenmediğini, sadece HAPPYVAR: undefined değişkeni ve sona erdiğini, blokta çalışacak şekilde nasıl çalışmasını sağlayabildiğini buldum. –