我编写了一个长脚本,其中一部分打印了TERM,PATH和HOME变量的值。
$Var1="$TERM"
echo "TERM $Var1"
$Var2="$PATH"
echo "PATH $Var2"
$Var3="$HOME"
echo "Home $Var3"
echo
然而,在脚本中,这给了我这个错误:
userinfo.sh: line 55: =xterm: command not found
TERM
userinfo.sh: line 58: =/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/student/ch399/bin: No such file or directory
PATH
userinfo.sh: line 61: =/home/student/ch399: No such file or directory
Home
它按我想要的方式打印值,但之后会立即打印错误。知道是什么导致了这个吗?
答案 0 :(得分:3)
从变量初始化中删除$
:
更改:
$Var1="$TERM"
echo "TERM $Var1"
$Var2="$PATH"
echo "PATH $Var2"
$Var3="$HOME"
echo "Home $Var3"
echo
为:
Var1="$TERM"
echo "TERM $Var1"
Var2="$PATH"
echo "PATH $Var2"
Var3="$HOME"
echo "Home $Var3"
echo
答案 1 :(得分:3)
你做错了^^
$Var1="$TERM"
echo "TERM $Var1"
$ Var1:这个输出变量Var1的内容(这里看起来似乎是空的,所以它会输出:“”)
$ TERM:此输出变量XTERM的内容(此处您似乎将其设置为:“xterm”)
所以你要对shell说:
=$TERM
echo "TERM "
创建输出(第一个是错误,第二个是回声):
=xterm: command not found
TERM
您应该使用:
Var1="$TERM"
echo "TERM $Var1"
Var2="$PATH"
(etc.)