Board logo

标题: [文本处理] 批处理如何查找1个TXT里IP地址,查出第2个TXT里相同IP地址的一行 [打印本页]

作者: shengzhoul    时间: 2021-11-30 19:55     标题: 批处理如何查找1个TXT里IP地址,查出第2个TXT里相同IP地址的一行

如何查找1个TXT文本里IP地址,查出第2个TXT文本里相同IP地址的一行,谢谢!
作者: Fit    时间: 2021-11-30 20:08

本帖最后由 Fit 于 2021-11-30 20:12 编辑

@echo off&setlocal enabledelayedexpansion
for /f %%i in (1.txt) do (
    echo %%i | findstr "%%i" 2.txt 1>nul 2>nul
    if !errorlevel! equ 0 echo,IP:%%i存在。
)
pause
作者: shengzhoul    时间: 2021-11-30 20:28

回复 2# Fit

老师傅,我运行后,对比出来的相同的一行,生成在哪里?
作者: Fit    时间: 2021-11-30 20:42

@echo off&setlocal enabledelayedexpansion
(for /f %%i in (1.txt) do (
    echo %%i | findstr "%%i" 2.txt 1>nul 2>nul
    if !errorlevel! equ 0 echo,IP:%%i存在。
))>ip.txt
pause
作者: shengzhoul    时间: 2021-11-30 20:58

回复 4# Fit


    您这个是直接保存为.BAT文件,再运行吗?我拷贝保存为.BAT文件后,双击,出现CMD黑一下,就没有了,也没有生成IP.TXT?
作者: Batcher    时间: 2021-12-1 09:55

回复 1# shengzhoul
  1. @echo off
  2. cd /d "%~dp0"
  3. findstr /x /g:1.txt 2.txt >3.txt
复制代码
请参考Q-04和Q-05把bat文件和txt文件都保存为ANSI编码:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
作者: shengzhoul    时间: 2021-12-1 13:57

回复 6# Batcher


   按照您给的,现在能生成IP.TXT了,里面是把1.txt和2.txt内相同的找了出来,但我是想要1.txt里有a  苹果 b香蕉     2.txt里有a   然后我要用2.txt文本里面的a 去找1.txt里面的a 苹果,生成ip.txt文本(里面就是a  苹果)
作者: shengzhoul    时间: 2021-12-1 13:59

回复 6# Batcher


      按照您给的,现在能生成IP.TXT了,里面是把1.txt和2.txt内相同的找了出来,但我是想要1.txt里有192.168.3.1 一层  192.168.3.2 二层     2.txt里有192.168.3.1   然后我要用2.txt文本里面的192.168.3.1 去找1.txt里面的192.168.3.1 一层,生成ip.txt文本(里面就是192.168.3.1 一层),不胜感谢!
作者: qixiaobin0715    时间: 2021-12-1 14:14

  1. findstr /g:2.txt 1.txt >3.txt
复制代码

作者: Batcher    时间: 2021-12-1 15:42

回复 8# shengzhoul


    /x 表示精确匹配,你这个模糊匹配的需求就把 /x 去掉吧,具体代码见9楼。
作者: shengzhoul    时间: 2021-12-1 15:50

回复 9# qixiaobin0715


    谢谢大师了!已经解决了
作者: shengzhoul    时间: 2021-12-1 15:50

回复 10# Batcher


       谢谢大师了!已经解决了




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2