我是批处理文件编码的初学者,并且对命令提示符有一定的经验。我正在查找如何从批处理文件中运行java程序,并注意到我需要创建一个路径,以便它可以编译和运行。奇怪的是,当我创建路径,编译并运行代码时,它表示javac不是内部或外部命令。有人可以向我解释是否有办法可以使用USB制作路径?我的代码的意图是复制到桌面,然后运行程序,最后返回输出的程序文件。我希望能够在任何Windows计算机上运行它。这是我的代码。谢谢。我几乎尝试了一切。
@echo off
cd /d C:\Users\%username%\Desktop
mkdir HackerMan
echo d | xcopy /d /s %~d0 C:\Users\%username%\Desktop\HackerMan
cd /d C:\Users\%username%\Desktop\HackerMan\ProgramFiles
set path = "C:\Users\%username%\Desktop\HackerMan\ProgramFiles\Java\bin"
javac IPGrabber.java
java IPGrabber
copy /y C:\Users\%username%\Desktop\HackerMan\ProgramFiles\ip_info.txt %~d0\IPs\ip_info.txt
cd /d C:\Users\%username%\Desktop
rmdir /s /q HackerMan
rmdir /s /q C:\$Recycle.Bin\HackerMan
答案 0 :(得分:2)
set path =" C:\ Users \%username%\ Desktop \ HackerMan \ ProgramFiles \ Java \ bin"
批处理对SET
语句中的空格敏感。 SET FLAG = N
设置一个名为" FLAG Space "的变量。值为" 空格 N"
语法SET "var=value"
(其中value可以为空)用于确保任何杂散尾随空格不包含在分配的值中。 set /a
可以安全地使用"无报"。
PATH 是Windows搜索的目录序列,用于查找当前目录中找不到的可执行文件。要更改路径,请使用"set path=newdirectory;%path%"
将当前路径附加到新目录。