【发布时间】:2012-04-14 06:16:44
【问题描述】:
我在 CentOS 下写了一个 bash 脚本,运行良好。在另一台电脑上是错误的。我一开始忘记了shebang,但是为什么在我的电脑上很好呢? 我认为这是一个非常初学者的问题,但我试了一下。谢谢。
更新: 又一个问题出现了。使用 ./filename.sh 和 sh filename.sh 执行有什么区别?
【问题讨论】:
-
您是否使用
sh script.sh运行它?在这种情况下,您不需要 shebang,因为 shell 已经知道使用哪个可执行文件来运行它。 -
我使用 scriptname.sh
运行它,它运行良好。为什么? -
您是否让它在其他系统上可执行?尝试以
./scriptname.sh而不是scriptname.sh运行它 -
您的意思是您使用
./scriptname.sh <params>运行它?或者你把它放在 $PATH 的某个地方? -
“在另一台电脑上出错了。” 我想这意味着当你运行脚本时电脑伸出手打了你一巴掌。如果没有,请告诉我们您尝试运行脚本时发生了什么(如果有确切的错误消息等)
标签: bash