标题: [文本处理] 批处理如何从一个文本提取指定内容复制到另外一个文本指定位置 [打印本页]
作者: sjl2002 时间: 2013-12-26 18:06 标题: 批处理如何从一个文本提取指定内容复制到另外一个文本指定位置
A.txt文本内容:
111111111---001
222222222---002
333333333---003
444444444---004
B.txt文本内容:
宽带账号:
宽带密码:
宽带自动登录:真
我想知道能不能提示手动输入001 002 003 后自动复制A文本里面---前面的内容到 B文本宽带账号:后面
作者: 1270697389 时间: 2013-12-26 19:24
本帖最后由 1270697389 于 2013-12-26 19:25 编辑
- @echo off
- setlocal enabledelayedexpansion
- set /p m=输入密码:
- for /f "tokens=1-2 delims=-" %%i in (a.txt) do (
-
- if /i %%j==!m! (
- echo,宽带账号:%%i>b.txt
- echo,宽带密码:%%j>>b.txt
- echo,宽带自动登录:真>>b.txt
- )
- )
- pause
复制代码
作者: sjl2002 时间: 2014-1-2 14:24
回复 2# 1270697389
试了下能提取 可是你理解错意思了,后面那个001代表的是机器号 不是密码 。还是要感谢你
作者: sjl2002 时间: 2014-1-2 14:29
@echo off
@setlocal enabledelayedexpansion
@ren b.txt _b.txt@for /f "tokens=1,2* delims=-" %%i in (a.txt) do (
@set pcname=%%j
@set pwd=%%i
@if %computername%==!pcname! (
@for /f "delims=" %%k in (_b.txt) do (
@set ln=%%k
@if !ln!==宽带账号: (
@echo 宽带账号:%computername% >> b.txt
) else (
@if !ln!==宽带密码: (
@echo 宽带密码:!pwd! >> b.txt
) else (
@echo !ln! >> b.txt
)))))if not exist b.txt (
@ren _b.txt b.txt
) else (
@del _b.txt /f /q >nul
)
帮我看看问题出在哪了
作者: sjl2002 时间: 2014-1-2 15:54
还有个问题 如果A.txt文件变成这样格式:
001
12345678454
002
12313231333
003
123132313213
004
1231321313213
.........
应该怎么写。
作者: 1270697389 时间: 2014-1-2 19:00
- @echo off
- setlocal enabledelayedexpansion
- set /a r=0
- set /p m=输入密码:
- for /f "tokens=1-2 delims=-" %%i in (a.txt) do (
- set /a r+=1
- setlocal enabledelayedexpansion
- if /i %%i==!m! (
- set /a k=!r!+1
- echo,宽带密码:%%i
- )
- if /i !r!==!k! (
- echo 宽带账号:%%i
- )
- )
- pause
复制代码
作者: 1270697389 时间: 2014-1-4 17:38
1270697389 发表于 2014-1-2 19:00
- @echo off
- setlocal enabledelayedexpansion
- set /a r=0
- set /p m=输入密码:
- for /f "tokens=1-2 delims=-" %%i in (a.txt) do (
- set /a r+=1
- setlocal enabledelayedexpansion
- if /i %%i==!m! (
- set /a k=!r!+1
- echo,宽带密码:%%i>>b.txt
- )
- if /i !r!==!k! (
- echo 宽带账号:%%i>>b.txt
- )
- )
- pause
复制代码
加上就可以了。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |