我有一个尝试启动 java 应用程序的批处理文件:
java -jar myProgram*.jar
我希望批处理文件评估通配符 * 以便找到程序,无论版本号如何。因此它应该找到 myProgram1.jar 或 myProgram438.jar 并运行它。
但是这个批处理文件会产生:
Error: Unable to access jarfile myProgram*.jar
看起来 java 的参数没有被 shell 处理。有没有办法在传递参数之前扩展参数中的通配符?我知道 Bash 有可以做到这一点的 backtics。在windows下可以实现吗?
最佳答案
如果您必须指定的文件夹中还有更多要启动的程序*.jar。该脚本启动“最后找到的”:
@echo off&setlocal
for %%i in (myProgram*.jar) do set "jarProg=%%~i"
java -jar %jarProg%
为此,您不需要“Cygwin”。
关于java - 扩展程序参数中的通配符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15855974/