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

[文本处理] [分享]批处理逐列合并两个文件

【问题】vpndown插到vpnup前面怎操作?

vpndown.bat
delete 1.0.1.0
delete 1.0.2.0
delete 1.0.8.0
delete 1.0.32.0
delete 1.1.0.0
delete 1.1.2.0
delete 1.1.4.0
delete 1.1.8.0
delete 1.1.9.0

vpnup.bat
mask 255.255.252.0 default METRIC default IF default
mask 255.255.252.0 default METRIC default IF default
mask 255.255.252.0 default METRIC default IF default
mask 255.224.0.0 default METRIC default IF default
mask 255.240.0.0 default METRIC default IF default
mask 255.252.0.0 default METRIC default IF default
mask 255.254.0.0 default METRIC default IF default
mask 255.255.128.0 default METRIC default IF default
mask 255.255.128.0 default METRIC default IF default
mask 255.254.0.0 default METRIC default IF default
mask 255.252.0.0 default METRIC default IF default
mask 255.254.0.0 default METRIC default IF default
mask 255.240.0.0 default METRIC default IF default

【代码】
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for /f "delims=" %%i in ('type "vpndown.bat"') do (
  4.     set /p str=
  5.     echo %%i !str!
  6. ))<"vpnup.bat" >"合并结果.bat"
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

本帖最后由 syscca 于 2019-5-17 16:55 编辑

vpndown.bat原数据
  1. @echo off
  2. route delete 1.0.1.0
  3. route delete 1.0.2.0
  4. route delete 1.0.8.0
  5. route delete 1.0.32.0
  6. route delete 1.1.0.0
  7. route delete 1.1.2.0
  8. route delete 1.1.4.0
  9. route delete 1.1.8.0
  10. route delete 1.1.9.0
复制代码
处理vpndown.bat做成del.txt这样的数据但mask后面要对上add.txt的数据
  1. delete 1.0.1.0 mask 255.255.255.0 default METRIC default IF default
  2. delete 1.0.2.0 mask 255.255.254.0 default METRIC default IF default
  3. delete 1.0.8.0 mask 255.255.248.0 default METRIC default IF default
  4. delete 1.0.32.0 mask 255.255.224.0 default METRIC default IF default
  5. delete 1.1.0.0 mask 255.255.255.0 default METRIC default IF default
  6. delete 1.1.2.0 mask 255.255.254.0 default METRIC default IF default
  7. delete 1.1.4.0 mask 255.255.252.0 default METRIC default IF default
  8. delete 1.1.8.0 mask 255.255.255.0 default METRIC default IF default
  9. delete 1.1.9.0 mask 255.255.255.0 default METRIC default IF default
复制代码
vpnup.bat原数据
  1. @echo off
  2.     for /F "tokens=3" %%* in ('route print ^| findstr "\<0.0.0.0\>"') do set "gw=%%*"
  3. ipconfig /flushdns
  4. route add 1.0.1.0 mask 255.255.255.0 %gw% metric 5
  5. route add 1.0.2.0 mask 255.255.254.0 %gw% metric 5
  6. route add 1.0.8.0 mask 255.255.248.0 %gw% metric 5
  7. route add 1.0.32.0 mask 255.255.224.0 %gw% metric 5
  8. route add 1.1.0.0 mask 255.255.255.0 %gw% metric 5
  9. route add 1.1.2.0 mask 255.255.254.0 %gw% metric 5
  10. route add 1.1.4.0 mask 255.255.252.0 %gw% metric 5
  11. route add 1.1.8.0 mask 255.255.255.0 %gw% metric 5
  12. route add 1.1.9.0 mask 255.255.255.0 %gw% metric 5
复制代码
处理vpnup.bat做成add.txt这样的数据
  1. add 1.0.1.0 mask 255.255.255.0 default METRIC default IF default
  2. add 1.0.2.0 mask 255.255.254.0 default METRIC default IF default
  3. add 1.0.8.0 mask 255.255.248.0 default METRIC default IF default
  4. add 1.0.32.0 mask 255.255.224.0 default METRIC default IF default
  5. add 1.1.0.0 mask 255.255.255.0 default METRIC default IF default
  6. add 1.1.2.0 mask 255.255.254.0 default METRIC default IF default
  7. add 1.1.4.0 mask 255.255.252.0 default METRIC default IF default
  8. add 1.1.8.0 mask 255.255.255.0 default METRIC default IF default
  9. add 1.1.9.0 mask 255.255.255.0 default METRIC default IF default
复制代码

TOP

回复 2# syscca


    先说第一个需求,del.txt里面的第4列子网掩码是根据什么规律出来的?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

处理vpnup.bat
  1. @echo off
  2. (for /f "tokens=2-5" %%a in ('findstr /c:"route add" "vpnup.bat"') do (
  3.     echo %%a %%b %%c %%d default METRIC default IF default
  4. ))>"add.txt"
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

我用PY扫描出来的。https://github.com/fivesheep/chnroutes回复 3# Batcher

TOP

规律就是对上add.txt的数据回复 3# Batcher

TOP

回复 6# syscca


    你先试试4楼代码生成的add.txt是否正确?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

如果4楼代码生成的add.txt是正确的,那么可以这样生成del.txt
  1. @echo off
  2. (for /f "tokens=1*" %%a in ('type "add.txt"') do (
  3.     echo delete %%b
  4. ))>"del.txt"
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

谢谢回复 8# Batcher

TOP

返回列表