【发布时间】:2021-05-20 20:23:33
【问题描述】:
以下命令根据分隔符之前的文件名部分(在本例中为破折号或-)创建文件夹:
setlocal EnableExtensions DisableDelayedExpansion
set "SourceDir=C:\Users\T\Source"
set "DestDir=C:\Users\T\Dest"
for /F "eol=| delims=" %%A in ('dir /B /A-D-H "%SourceDir%\*-*.jpg" 2^>nul') do (
for /F "eol=| tokens=1 delims=-" %%B in ("%%~nA") do (
md "%DestDir%\%%B" 2>nul
REM move /Y "%SourceDir%\%%A" "%DestDir%\%%B\"
)
)
endlocal
具体来说,分隔符命令在这里:
delims=-
但是我需要在分隔符中包含一个空格,在破折号之前和之后。如何在delims 中包含空格?
【问题讨论】:
-
分隔符是一组单个字符,而不是字符串。
"Delims=ab在每个a和每个b处拆分。 -
@Stephan 我不知道。有没有办法修改现有脚本以获取字符串而不是字符?
标签: batch-file command whitespace delimiter