我做了这个代码
while [ -z "$USER" ]; do
>&2 echo -n 'Your desired User : '
read USER
done
但这不起作用,因为$USER
是从运行脚本的当前用户获取的,这不是我想要的。
$USER
对于该变量以及可能发生这种情况的其他变量,将来如何避免这种情况?类似$PATCH
或相似
答案1
使用小写变量名称,或者确切地知道要避免使用哪些大写变量名称。
对于非环境变量(即shell变量),只需使用小写:
while [ -z "$user" ]; do
read -p 'User name: ' user
done