我正在尝试运行包含以下内容的 shell 脚本
ns script.tcl
sleep 100
在终端中输入命令ns
时工作正常,但是显示:
ns : not found
从 shell 脚本运行时。
答案1
#!/bin/bash
ns script.tcl
sleep 100
如果您尝试在顶部使用正确的解释器声明来运行脚本,会发生什么情况?这可能会加载您的 $PATH,这就是您的终端知道在哪里找到 的方式ns
。
如果此方法无效,您可以尝试以下操作:
#!/bin/bash
/usr/bin/ns script.tcl
sleep 100
您可能应该指向 script.tcl 所在的路径/目录。如果它与 bash 脚本位于同一目录中,那么就没问题了。但是如果您的 CWD 有 script.tcl,会发生什么?编写脚本时最好具体一点。我能够通过在终端中ns
运行来判断它的位置。which ns