批量 cmd MKDIR 文件夹,名称包括符号



我想使用命令批处理来创建列表文件夹。

但是文件夹的名称包含符号字符,我不知道如何使用cmd批处理

例如:我想创建列表文件夹

01.DOCUMENT
02.SOURCE
03.DESIGN
04.TEST
05.REPORT
06....
输入

:输入根目录(strfolder)

然后示例使用:mkdir %strfolder%\ (+ 名称文件夹 01.Ducment,...),但我不知道使用

我当前的代码:

@echo off
cls
set /p folderName=Enter project name:%=%
@echo %folderName%
SET mypath=%~dp0
rem echo %mypath:~0,-1%
set folder=%mypath%%folderName%

if exist %folder% (
    echo "Folder already exists"
) else (
    mkdir %folder%
    rem mkdir %folder%%1 %RELEASE% --> this line don't know how :D
    echo %folder%%^1%
)
pause

如果目标包含符号,则需要引用目标:

mkdir "%folder%"

mdmkdir 相同 )

也: mkdir "%folder%" 2>nul

将创建目录;2>nul禁止显示错误消息。

%release%不知从何而来。你没有说它是什么或它来自哪里;那你还是REM了。没有关于那里正在发生的事情的IEA。

现在,如果您的目录名称在文件中,那么

for /f "delims=" %%i in (filename.txt) do echo %%i

应该显示你的名字。如果要使用这些名称创建子目录,则

for /f "delims=" %%i in (filename.txt) do echo MD "%folder%%%i"

应该为您执行此操作 - 好吧,会ECHO命令; 删除 ECHO 关键字以实际创建目录。

请注意,几乎任何字符都会很高兴,只要它保留在元变量中%%i用作循环控制。一些不太常用的字符可能会在序号%变量%中出现问题。

如果数据包含括号,则解析器可能会混淆括号是命令的一部分还是数据的一部分。如果是这种情况,最好避免使用括号结构。

最新更新