(我提前道歉:我不知道我的问题是关于代码语法还是文件系统,并且 - 在后一种情况下 - 适合Linux论坛)
我试图设置一个小的shell脚本。但是一旦涉及多行语句,我就会遇到一种奇怪的行为。
从教程页面中得到了一个例子:
number=1
if [ $number = "1" ]; then
echo "Number equals 1"
else
echo "Number does not equal 1"
fi
如果我通过PuTTy连接到我的虚拟linux机器(openSUSE 13.1)并复制并粘贴代码,那么工作正常。它做到了预期。
但当我创建一个名为shell_test.sh(通过SFTP Net Drive连接)的文件时,其中包含以下内容
#!/bin/bash
number=1
if [ $number = "1" ]; then
echo "Number equals 1"
else
echo "Number does not equal 1"
fi
并使用bash shell_test.sh
从命令行调用它我收到错误:
第7行:意外令牌“fi'
附近的语法错误
for循环也是如此。语法错误接近令牌" do"。