标题: [文本处理] BAT查找字符串找不到时怎么输出找不到? [打印本页]
作者: jpu 时间: 2013-9-5 13:17 标题: BAT查找字符串找不到时怎么输出找不到?
- findstr /i "张芳 施洁 徐德俊 赵淑 石静 徐霞" employee.txt >a.txt
- if errorlevel==1
- echo 找不到
复制代码
我想输出找不到人的名字,怎么写?
作者: terse 时间: 2013-9-5 13:43
- @echo off
- set str=张芳 施洁 徐德俊 赵淑 石静 徐霞 徐俊
- (for %%i in (%str%) do echo %%i)>"%temp%\$"
- findstr /ixg:"%temp%\$" employee.txt >a.txt
- findstr /ivxg:employee.txt "%temp%\$"
- del "%temp%\$"
- pause
复制代码
作者: digger 时间: 2013-9-6 16:32
@echo off
:lp
set /a cc+=1
for /f "tokens=%cc%" %%i in (2.txt) do (
echo %%i >>4.txt
)
if %cc% gtr 1000 call :pl
goto lp
:pl
set "str=李明 杨刚 阿亚 天天 张三 李四 王五 麻子 麻六 阿狎"
for %%j in (%str%) do (
find "%%j" 4.txt >nul || echo %%j
)
pause
换个思路,来个蜗牛式的
作者: PowerShell 时间: 2013-9-6 21:34
6个单独的查找,每成功一个不返回任何内容。每失败一个,结果的字符串就加上这个人的名字,最后打印结果。
作者: Batcher 时间: 2013-9-6 21:41
- grep -vE "张芳|施洁|徐德俊|赵淑|石静|徐霞" a.txt | more > b.txt
复制代码
作者: xpw 时间: 2013-9-6 22:19
- @echo off
- set "name=张芳 施洁 徐德俊 赵淑 石静 徐霞"
- for %%a in (%name%) do (findstr "%%a" employee.txt >nul||echo %%a>>nofind.txt)
- pause
复制代码
作者: hzcxdgioa 时间: 2013-11-28 23:27
路过看看!!!!!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |