Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有一种方法可以使用Cygwin运行shell脚本并为java命令使用正确的路径分隔符_Java_Bash_Unix_Shell_Cygwin - Fatal编程技术网

有没有一种方法可以使用Cygwin运行shell脚本并为java命令使用正确的路径分隔符

有没有一种方法可以使用Cygwin运行shell脚本并为java命令使用正确的路径分隔符,java,bash,unix,shell,cygwin,Java,Bash,Unix,Shell,Cygwin,我正在尝试使用Cygwin测试一个Java应用程序的启动脚本,该应用程序将在Linux环境中运行 麻烦的是,当我指定boothclasspath或Classpath时,我需要使用操作系统特定的路径分隔符“;”用于windows,“:”用于Linux。这是因为Java仍然是本机windows应用程序,并且使用本机OS路径分隔符() shell脚本中是否有任何方法可以检测我正在运行的操作系统(或者如果我在CYGWIN中运行),并指定正确的路径分隔符 我正在尝试设置以下内容: MAVEN_OPTS="

我正在尝试使用Cygwin测试一个Java应用程序的启动脚本,该应用程序将在Linux环境中运行

麻烦的是,当我指定boothclasspath或Classpath时,我需要使用操作系统特定的路径分隔符“;”用于windows,“:”用于Linux。这是因为Java仍然是本机windows应用程序,并且使用本机OS路径分隔符()

shell脚本中是否有任何方法可以检测我正在运行的操作系统(或者如果我在CYGWIN中运行),并指定正确的路径分隔符

我正在尝试设置以下内容:

MAVEN_OPTS="-Xbootclasspath/a:test/resources:live/resources"
在Windows上,它需要: MAVEN_OPTS=“-Xbootclasspath/a:test/resources;live/resources”

在这里找到了答案:

您可以使用来测试是否正在运行Cygwin,例如:

if uname | grep -iq cygwin; then
    # use ; for path separator
else
    # use : for path separator
fi
如果echo“${OSTYPE}”| egrep-iq'^(cygwin | msys)
if uname | grep -iq cygwin; then
    # use ; for path separator
else
    # use : for path separator
fi