批处理脚本变量中 Space 的问题
Problem with Space in Variable on Batch-Script
我的批处理脚本有问题。
我想删除一个文件 我先复制一个变量。
如果我输出变量,所有 space 都在那里。
但如果我尝试删除它,文件名会停在第一个 space.
For /F "delims=" %%i in ('dir /B *.mkv') do set orginaldatei=%%~ni.mkv
ECHO %orginaldatei%
del %orginaldatei%
我也试过没有“delims=”。
解决方法是引用文件名。
del "%orginaldatei%"
那是因为 del
接受要删除的文件列表,由 space 分隔。
如果 space 是定界符或文件名的一部分,引号有助于弄清楚。
del my file --- Tries to delete "my" and "file"
del "my file" --- Tries to delete "my file"
我的批处理脚本有问题。 我想删除一个文件 我先复制一个变量。 如果我输出变量,所有 space 都在那里。 但如果我尝试删除它,文件名会停在第一个 space.
For /F "delims=" %%i in ('dir /B *.mkv') do set orginaldatei=%%~ni.mkv
ECHO %orginaldatei%
del %orginaldatei%
我也试过没有“delims=”。
解决方法是引用文件名。
del "%orginaldatei%"
那是因为 del
接受要删除的文件列表,由 space 分隔。
如果 space 是定界符或文件名的一部分,引号有助于弄清楚。
del my file --- Tries to delete "my" and "file"
del "my file" --- Tries to delete "my file"