双击运行.sh文件

Del*_*ens 6 bash shell ubuntu

GUI:
我更改了 sh 文件的权限,以便我可以读取、写入和执行它。我双击它,选择在 Shell/终端中运行(以英文显示为准),但它没有运行。我双击它,选择运行,但它没有运行。

命令行:
bash *filename*运行它
sh *filename*运行它

文件内容为:

#!/bin/bash

# get dirsyncpro home
DIRSYNCPRO_HOME="$(dirname $0)"

# start programm and pass any parameters
java -Xmx512M -jar "$DIRSYNCPRO_HOME/dirsyncpro.jar" $* 
Run Code Online (Sandbox Code Playgroud)

在此人的计算机上工作:

http://www.knowliz.com/2008/08/how-to-installrun-sh-file-in-linux.html

这是怎么回事?

Joh*_*han 7

您的测试是错误的,您必须能够在不先调用另一个 shell 的情况下运行它。

./my_little_script.sh
Run Code Online (Sandbox Code Playgroud)

并不是

bash my_little_script.sh
Run Code Online (Sandbox Code Playgroud)

还要仔细检查权限是否正确。

chmod 755 my_little_script.sh
Run Code Online (Sandbox Code Playgroud)


Del*_*ens 0

dirsyncpro 自述文件说它必须在所有非 Windows 操作系统中通过命令行运行。我避免运行 jar 文件,但没有其他办法。