文件描述下,我的意思是要把1.txt中所有含【含公司数字签名的部分】替换为空,复制代码
- 如何生成2.txt?
- [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
- → <Vistadrv><C:\Program Files\vsdrv\vsdrv.exe>[]
- ][HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
- → <Adobe Reaed Launcher>[N/A]
这个代码可以用,但是在实际操作中需要添加太多的白名单了复制代码
- cd.>temp.txt
- setlocal enabledelayedexpansion
- for /f "tokens=*" %%i in (1.txt) do (
- set var=%%i
- set "var=!var:[Realtek Semiconductor Corp.]=正常!"
- echo !var!>>temp.txt
- )
- @findstr /v "正常" temp.txt >>2.txt
复制代码
- @Echo Off&SetLocal EnableDelayedExpansion
- (For /F "delims=" %%i IN (1.txt) Do (
- Set "Str=%%i"
- If "!Str!" EQU "!Str:[Realtek Semiconductor Corp.]=!" Echo !Str!
- ))>2.txt
- Start 2.txt
复制代码
- @Echo Off&SetLocal EnableDelayedExpansion
- (For /F "delims=" %%i IN (1.txt) Do (
- Set "Str=%%i"&Set "Flag="
- For %%a IN ("N/A" "File is missing" "") Do (
- If "!Str!" NEQ "!Str:[%%~a]=!" Set "Flag=a"
- )
- If Defined Flag Echo !Str!
- ))>2.txt
- Start 2.txt
而你的第二个代码只是复制代码
- [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
- → <Vistadrv><C:\Program Files\vsdrv\vsdrv.exe>[]
- [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
- → <Adobe Reaed Launcher>[N/A]
错在:其他部分没了复制代码
- → <Vistadrv><C:\Program Files\vsdrv\vsdrv.exe>[]
- → <Adobe Reaed Launcher>[N/A]
复制代码
- @Echo Off&SetLocal EnableDelayedExpansion
- (For /F "delims=" %%i IN (1.txt) Do (
- Set "Str=%%i"&Set "Flag="
- If /I "!Str:~,5!" EQU "[HKEY" Set "Flag=a"
- For %%a IN ("N/A" "File is missing" "") Do (
- If "!Str!" NEQ "!Str:[%%~a]=!" Set "Flag=a"
- )
- If Defined Flag Echo !Str!
- ))>2.txt
- Start 2.txt
太棒了,
坚定的相信这里确实高手如云
我想到的,你能办到
我没想到的,你想到了
所以
谢谢你兄弟,谢谢bathome!
欢迎光临 批处理之家 (http://bathome.net./) | Powered by Discuz! 7.2 |