我正在编写一个批处理文件来编辑cygwin的文本文件,以便在没有人工干预的情况下启用chroot。
我想找到包含关键字 SvcCOPSSH 的行,然后进行编辑 使用deliminator冒号替换第三个和第四个之间的数字" :"
例如,找到以下行
SvcCOPSSH:unused_by_nt / 2000 / XP:的 1023 :545:U-WINDOWS-AU90FH5 \ SvcCOPSSH,S-1-5-21-2xxxx5-2xxx9-7xx50-1031:在/ var /: / bin中/假
并将 1023 编辑为 0
SvcCOPSSH:unused_by_nt / 2000 / XP: 0 :545:U-WINDOWS-AU90FH5 \ SvcCOPSSH,S-1-5-21-2xxxx5-2xxx9-7xx50-1031:在/ var /: / bin中/假
感谢您的帮助
答案 0 :(得分:1)
setlocal enabledelayedexpansion
for /f "tokens=1-7 delims=:" %%a in ('findstr "^SvcCOPSSH" file.txt') do (
echo %%a:%%b:0:%%d:%%e:%%f:%%g >new.txt
)
del file.txt /f /q
ren new.txt file.txt
只需将file.txt
替换为您的实际文本文件。