Batch file 如何在批处理脚本中从字符串中删除前导空格和跟踪空格?
我有一个Batch file 如何在批处理脚本中从字符串中删除前导空格和跟踪空格?,batch-file,Batch File,我有一个first.properties文件,我正在读取该文件,跳过前5行,并用first.properties的其余行创建一个新文件。这很好用。但是在新创建的文件中,每行都有空格。我想删除这些空格 我使用了以下代码: @echo off set new=0 setlocal ENABLEDELAYEDEXPANSION for /F "skip=5" %%L in (first.properties) do ( echo %%L>>NewProjectsInfo.propertie
first.properties
文件,我正在读取该文件,跳过前5行,并用first.properties
的其余行创建一个新文件。这很好用。但是在新创建的文件中,每行都有空格。我想删除这些空格
我使用了以下代码:
@echo off
set new=0
setlocal ENABLEDELAYEDEXPANSION
for /F "skip=5" %%L in (first.properties) do (
echo %%L>>NewProjectsInfo.properties
)
endlocal
pause
首先。属性如下所示:
name=abcd
number=bcde
address=cdef
mobile=efgh
worklocation=ghij
请帮我删除空格。试试这个。当数字直接位于>>字符之前时,可能会出现问题。
您没有使用ENABLEDELAYEDEXPANSION,所以我也删除了它
@echo off
set new=0
setlocal
for /F "skip=5 delims=" %%L in (first.properties) do (
>>NewProjectsInfo.properties echo %%L
)
endlocal
pause
试试这个。当数字直接位于>>字符之前时,可能会出现问题。
您没有使用ENABLEDELAYEDEXPANSION,所以我也删除了它
@echo off
set new=0
setlocal
for /F "skip=5 delims=" %%L in (first.properties) do (
>>NewProjectsInfo.properties echo %%L
)
endlocal
pause
这种方法看起来很有效,但我认为它可能对行内容有点敏感。如果我们有代表性的数据,就更容易测试
这种方法看起来很有效,但我认为它可能对行内容有点敏感。如果我们有代表性的数据,则更容易测试…在代码中的NewProjectsInfo.properties
后面有一个空格。如果将其删除,它将按照您的预期工作
令人难过的是,看起来batch将命令解释为整行,并将重定向部分分离出来。例如,在bash中,命令终止于
符号本身
e、 g.echo hello>somefile.txt world
将hello world
放入somefile.txt在代码中的NewProjectsInfo.properties
后面有一个空格。如果将其删除,它将按照您的预期工作
令人难过的是,看起来batch将命令解释为整行,并将重定向部分分离出来。例如,在bash中,命令终止于
符号本身
e、 g.echo hello>somefile.txt world
将hello world
放入somefile.txt
我是否正确理解first.properties
(第6行之后)中的条目有前导空格和/或尾随空格?因为你发布的行(只有5行)没有。如果您得到的代码神秘地创建了空格,我会感到惊讶。与您的问题相比,这有点倒退,因为它添加了字符,但可能会有所帮助:我是否正确理解中的条目首先是。属性(第6行后)中有前导空格和/或尾随空格?因为你发布的行(只有5行)没有。如果你得到的代码神秘地创建了空格,我会感到惊讶。与你的问题相比,这有点倒退,因为它添加了字符,但可能会有帮助:你很棒…它工作得很好…感谢你的支持你很棒…它工作得很好…感谢你的支持