[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理如何将文本中指定特征的行分别与其下多行字符串合并

本帖最后由 pcl_test 于 2016-8-9 23:35 编辑

这样处理文本:补充完整路径
在1.txt中有
  1. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run   
  2. →\SigmatelSysTrayApp
  3. →\UIUCU
  4. →\KAV50
  5. →\FIPExpert
  6. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
  7. →\DAEMON Tools-1033
  8. →\yassistse
  9. →\YLive.exe
  10. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
  11. →\config.exe
复制代码
如何生成
2.txt:
  1. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run→\SigmatelSysTrayApp
  2. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run→\UIUCU
  3. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run→\KAV50
  4. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run→\FIPExpert
  5. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run→\DAEMON Tools-1033
  6. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run→\yassistse
  7. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run→\YLive.exe
  8. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run→\config.exe
复制代码
说明:手工操作过程是:先剪切→\归属的注册表路径,在复制到各自对应的下方
1

评分人数

3# zm900612

不符合题意

TOP

2# wolonga123

谢谢提醒,用你的代码,我自己写了个:
  1. @echo off
  2. cd.>temp_1.txt
  3. SetLocal EnableDelayedExpansion
  4. For /F "tokens=*" %%i IN (1.txt) Do (
  5.     set "str=%%i"
  6.     if "!str:~,1!" equ "→" (
  7.        if defined var (echo !var!&echo %%i) ELSE echo %%i
  8.     ) else set var=%%i
  9. )>>temp_1.txt
  10. @echo off>temp_2.txt&set n=1
  11. FOR /f "delims=" %%1 in (temp_1.txt) do (
  12. 2>nul    set /a n+=1,f=n%%2,1/f&&echo,%%1||set/p=%%1<nul
  13. ) >>temp_2.txt
  14. cd.>2.txt
  15. for /f "tokens=*" %%i in (temp_2.txt) do echo,%%i>>2.txt
复制代码
目前的问题是怎么去除“Run” 与  “→\”前的空格
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run   →\SigmatelSysTrayApp
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run   →\UIUCU
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run   →\KAV50
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run   →\FIPExpert
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run →\DAEMON Tools-1033
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run →\yassistse
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run →\YLive.exe
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run→\config.exe

TOP

5# zm900612


恩,好代码,但是怎么,去除空格呢

TOP

8# zm900612

谢谢版主,问题解决

另外问一句,假设不知道1.txt里面自动的空格是多少,有其他方法么?【因为处理文本时也可能因为各种原因出现这样的情况】

TOP

返回列表