怎么用批处理读取含多个空格的字符串

来源:百度知道 编辑:UC知道 时间:2024/09/21 08:31:20
我想把第二行的数据提出来包括空格

SERVICE_NAME: Alerter
SERVICE_NAME: ALG
SERVICE_NAME: AppMgmt
SERVICE_NAME: aspnet_state
SERVICE_NAME: AudioSrv
SERVICE_NAME: BITS
SERVICE_NAME: Browser
SERVICE_NAME: CiSvc
SERVICE_NAME: ClipSrv
SERVICE_NAME: COMSysApp
SERVICE_NAME: CryptSvc
SERVICE_NAME: DcomLaunch
SERVICE_NAME: Dhcp
SERVICE_NAME: dmadmin
SERVICE_NAME: dmserver
SERVICE_NAME: Dnscache
SERVICE_NAME: Dot3svc
SERVICE_NAME: EapHost
SERVICE_NAME: EhttpSrv
SERVICE_NAME: ekrn
SERVICE_NAME: Eventlog
SERVICE_NAME: EventSystem
SERVICE_NAME: FastUserSwitchingCompatibility
SERVICE_NAME: FLEXnet Licensing Service
SERVICE_NAME: helpsvc
SERVICE_NAME: HidServ
SERVICE_NAME: hkmsvc
SERVICE_NAME: HTTPFilter
SERVICE_NAME: IDriverT
SERVICE_NAME: ImapiService
SERVICE_NAME: LanmanServer
SERVICE_NAME: lanmanworkstation
SERVICE_NAME: LmHosts
SERVICE_NAME

@echo off&setlocal enabledelayedexpansion

for /f "tokens=2 delims=:" %%i in (a.txt) do (
set "var=%%i"
set var=!var: =;!
for /f "delims=" %%a in ("%%i") do (
set "str=%%a"
set str=!str:;= !
echo !str:~1!
)
)>>op.txt
start op.txt
exit

保留最前面空格!
@echo off&setlocal Enabledelayedexpansion
if exist "结果.txt" del /q /f /a "结果.txt"
set /p file=请把你要处理的文本文件拖到本窗口或手动输入路径文件名:
set "file=!file:"=!"
for /f "tokens=1,2 delims=:" %%a in ('type "%file%"') do echo %%b>>结果.txt
start 结果.txt&exit

不保留最前面空格!
@echo off&setlocal Enabledelayedexpansion
if exist "结果.txt" del /q /f /a "结果.txt"
set /p file=请把你要处理的文本文件拖到本窗口或手动输入路径文件名:
set "file=!file:"=!"
for /f "tokens=1,2 delims=: