无法使用java运行.sh文件

时间:2009-12-12 11:21:48

标签: shell

我有一个.sh文件,我试图使用运行时api运行。 如果.sh文件位于主项目文件夹下,它会完美运行,但我希望从项目文件夹外部访问它。

示例:/home/test/test.sh

当我尝试运行时,我得到/home/test/test.sh not found error

有人能告诉我如何使用运行时从本地系统访问文件来执行.sh文件吗?

2 个答案:

答案 0 :(得分:1)

Runtime.exec()不是命令行 使用Runtime.exec()覆盖的一个陷阱是错误地假设exec()接受命令行(或shell)接受的任何String。 Runtime.exec()更有限,而不是跨平台。这个缺陷是由尝试使用exec()方法接受单个String作为命令行的用户引起的。混淆可能是由于命令是exec()方法的参数名称。因此,程序员错误地将参数命令与他或她可以在命令行上键入的任何内容相关联,而不是将其与单个程序及其参数相关联。

答案 1 :(得分:0)

是chmoded为可执行文件的.sh文件吗?

如果不是你可以:

chmod +x /home/test/test.sh

当你调用脚本时,通过sh传递它:

sh /home/test/test.sh