标题可能没有多大意义,但我正在尝试制作一个批处理文件,以帮助自动化Java学习过程。在这种情况下,我试图创建一个程序,该程序可以自动找到存储Java项目文件的目录,找到最新文件,编译该文件,然后运行它。
到目前为止,我有这个:
@ECHO OFF
E:
cd \Documents\Java
for /f %%i in ('dir /b/a-d/od/t:c') do set LAST=%%i
echo The most recently created file is %LAST%
javac %LAST%
java %LAST%
pause
暂停仅用于各种调试,因此我可以在再次关闭窗口之前了解其内容。
[如您所见,%LAST%
是最新文件,通过运行该程序,它可以对其进行编译。但是,此后的问题是,即使%LAST%
自身更改为“ .class”文件,我也无法找到从新设置的.class
中删除%LAST%
位的方法,因此java命令可以运行它而不会沿“找不到类<filename>.class
”的行返回错误。
有人知道了吗?谢谢
标题可能没有多大意义,但我正在尝试制作一个批处理文件,以帮助自动化Java学习过程。在这种情况下,我试图制作一个程序来自动找到我的...
您可以打开cmd
并键入for /f
,然后查看变量扩展如何工作。这是使用您的代码的演示: