Batch file 在for/f批处理命令中使用空格
假设有一个名为dir.txt的文件,其中包含以下内容:Batch file 在for/f批处理命令中使用空格,batch-file,for-loop,space,Batch File,For Loop,Space,假设有一个名为dir.txt的文件,其中包含以下内容: singleword two words 运行dos批处理命令 for /f %%d in (dir.txt) do echo %%d 显示 singlewords two 即第二行被截断为第一个空格。如何强制命令返回整行内容?您可以使用以下语法: for /f "tokens=*" %%d in (dir.txt) do echo %%d 或者,如果出于某种原因,您不想要所有这些: for /f %%d in (dir.txt)
singleword
two words
运行dos批处理命令
for /f %%d in (dir.txt) do echo %%d
显示
singlewords
two
即第二行被截断为第一个空格。如何强制命令返回整行内容?您可以使用以下语法:
for /f "tokens=*" %%d in (dir.txt) do echo %%d
或者,如果出于某种原因,您不想要所有这些:
for /f %%d in (dir.txt) do echo %%d %%e
您可以使用以下语法:
for /f "tokens=*" %%d in (dir.txt) do echo %%d
或者,如果出于某种原因,您不想要所有这些:
for /f %%d in (dir.txt) do echo %%d %%e
当
tokens=*
删除前导空格时,最好使用delims=
:
for /f "delims=" %%d in (dir.txt) do echo %%d
注意:这将删除所有空行。而
标记=*
将删除前导空格。最好使用delims=
:
for /f "delims=" %%d in (dir.txt) do echo %%d
注意:这将删除所有空行