Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.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
将变量从Java传递到批处理_Java_Batch File_Batch Rename - Fatal编程技术网

将变量从Java传递到批处理

将变量从Java传递到批处理,java,batch-file,batch-rename,Java,Batch File,Batch Rename,此Java程序打开一个批处理文件并传递字符串folderName public class FolderCreator { public static void main(String[] args) { try{ Process p = Runtime.getRuntime().exec("C:/Documents/NameFolder.bat folderName"); p.waitFor(

此Java程序打开一个批处理文件并传递字符串
folderName

public class FolderCreator {

    public static void main(String[] args) {
        try{    
            Process p = Runtime.getRuntime().exec("C:/Documents/NameFolder.bat folderName");
            p.waitFor();
        }catch(Exception e) {
            System.out.println(e);
        }   
    }
}
这是NameFolder.bat文件。它应使用上面传递的Java变量的名称创建一个文件夹

//What do I need to ad here?

if not exist "C:\Desktop\folderName\" mkdir C:\Desktop\folderName
我需要向批处理文件添加什么

编辑:

这很有效

if not exist "C:\Desktop\%1\" mkdir C:\Desktop\%1
批处理脚本 以下内容仅在目录不存在时创建目录

假设您将其保存到文件C:/Documents/NameFolder.bat,您只需使用相同的Java代码执行它

Process p = Runtime.getRuntime().exec("C:/Documents/NameFolder.bat folderName");
这将创建一个
c:\Users\%USERNAME%\Desktop\folderName
目录,前提是该目录不存在

这不是最佳做法。请仔细阅读从Java执行shell/batch脚本


您是在请求Java或Batch方面的帮助吗?我需要向Batch文件添加什么内容才能执行
%1
操作?您是否通过
args
收到此
folderName
?当有
Java.nio
时,为什么要通过Java使用脚本语言?您只需创建一个指向桌面的
路径
,然后
解析
文件夹名称。。。
Process p = Runtime.getRuntime().exec("C:/Documents/NameFolder.bat folderName");