我有一个简单的shell脚本:
#!/bin/bash
var="foo"
echo $var
当我运行它时,使用sh shell.sh
(shell
作为它的文件名,会出现以下错误:
: not found: 2: shell.sh:
这是什么意思?
您尝试了sh ./shell.sh
替代sh shell.sh
吗?
(出于安全原因,当前目录.
在PATH变量中永远不存在)
同样,#!/bin/bash
仅当脚本本身运行时才需要脚本中的第一行,
例如./shell.sh
(不要忘记chmod a+x shell.sh
在这种情况下这样做)
最后,该sh
命令将调用破折号外壳,而不是bash外壳,因此,最好使用bash脚本bash ./shell.sh
代替sh ./shell.sh
注意行尾:
Bash不接受\ r \ n(CRLF)作为行尾(这是Windows风格)。
仅允许\ n(LF)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句