【发布时间】:2013-04-24 17:05:31
【问题描述】:
我需要在命令提示符窗口批处理文件中执行此操作。我有一个批处理文件,我需要比较两个文件的文件名;例如我有 whatever-5428.jar 和 whatever-9001.jar 可能还有更多 whatever*.jar 文件。
我需要为我的批处理文件制作一个脚本,以便它使用编号最高的 jar。 (9001高于5428)。这让我更加困难,因为我不能做java -jar -Xmx2G -XX:MaxPermSize=256m whatever*.jar,因为 java 不喜欢通配符。
我需要将它与上面的 java 脚本一起使用,因为我使用一定数量的 RAM 和 Perm Size 启动它。
在批处理文件中,我怎样才能得到其中编号最大的jar文件?我完全不知道如何使用 java,我只是从批处理文件中启动它,也许有一些方法可以使用某些方法来检查具有最高编号的文件,然后使用以下命令行启动该文件:@987654326 @
在此处查看我的批处理文件:http://www.fileswap.com/dl/XyvIN2VpgF/
【问题讨论】:
-
@Eric Leschinski 我的意思是最后一个数字最大的人
-
您也可以使用一个小的 java 脚本来决定加载哪个 jar 并从 java 脚本中进行最终启动,但我很好奇为什么您不知道要提前使用哪个 jar时间。 Maven 非常适合跟踪 jar 依赖项
-
@kdubb 我正在处理一些 jar 文件,它会从一些网站上自动更新它们(它们的文件名按版本命名,例如 4005、8119)。然后我需要确定编号最大的文件名,这样我就可以让我的批处理文件删除其余的文件并运行编号最大的文件名。我看到了 FindStr 的东西,但如果我可能有多个文件,我不确定它是否兼容,并且如前所述,它非常有限。我希望它纯粹是批处理的,所以它不需要任何外部文件,只需要 .bat 本身。
-
是否可以在下载新文件时让自动更新程序删除旧文件?这似乎是您以后不想担心的事情,如果没有同一个 jar 的多个版本,创建批处理文件会更容易。
-
@kdubb 我明白你的意思但是它会在下载之前检查更新但是如果没有可用的更新,它将不会更新。