变量被空格替换

时间:2015-11-10 11:18:41

标签: shell cygwin

我在cygwin终端上使用shell脚本来复制文件中的几行。

mkdir CPM_WORKAREA
touch ~/.ssh/config
echo "Host gerrit.epk.ericsson.se" >> ~/.ssh/config
echo "HostkeyAlgorithms ssh-dss" >> ~/.ssh/config
echo "Hostname 136.225.198.208" >> ~/.ssh/config
echo User $signumid >> ~/.ssh/config
echo "PubKeyAuthentication yes" >> ~/.ssh/config
echo "IdentityFile ~/.ssh/id_rsa" >> ~/.ssh/config

在上面的文件中,$ signumid是一个变量,我试图通过命令行设置其值:

    sh script1.sh signumid="john"

但是当运行上面的脚本时,它会复制配置文件中的行,但留下空格代替signumid

1 个答案:

答案 0 :(得分:0)

分配必须在命令之前,否则字符串signumid=john将被理解为脚本的参数。

signumid="john" sh script1.sh