Board logo

标题: [文本处理] 批处理怎样根据输入的字符串在文件中进行查找 [打印本页]

作者: yxbzxm    时间: 2014-9-29 22:12     标题: 批处理怎样根据输入的字符串在文件中进行查找

本帖最后由 yxbzxm 于 2014-10-1 02:33 编辑

批处理;
   我要在批处理输入框中输入一个12位的以0开头的纯数字帐号 如:050105001257
然后在文本如: 帐号管理.txt(文本中有三个号,050100002597.050105001257.050100008753)中较对.
有则执行下一步,无则退出!


在此敬谢!!!
作者: DAIC    时间: 2014-9-29 22:51

  1. @echo off
  2. set /p input=请输入字符串:
  3. type 帐号管理.txt | findstr "\<%input%\>" >nul && echo 有 || echo 没有
  4. pause
复制代码

作者: yxbzxm    时间: 2014-9-29 22:59

也 谢谢你 我先试一下
作者: yxbzxm    时间: 2014-9-29 23:08

有点毛病 空格也转向有..?如何解决?
作者: CrLf    时间: 2014-9-29 23:17

本帖最后由 CrLf 于 2014-9-30 00:15 编辑

回复 4# yxbzxm


    借用 2 楼代码:
  1. @echo off
  2. set /p input=请输入字符串:
  3. set /p input=请输入字符串:
  4. cmd /v /c "echo;!input!"|findstr /v "[^0-9]" && (type 帐号管理.txt | cmd /c findstr /rc:"\<%%input%%\>" && echo 有 ) || echo 没有
  5. pause
复制代码

作者: yxbzxm    时间: 2014-9-29 23:26

回复 2# DAIC


    不输入任何数字 会显示有!
作者: yxbzxm    时间: 2014-9-29 23:26

回复 5# CrLf


    输入正确了也显示没有?
作者: CrLf    时间: 2014-9-29 23:39

回复 7# yxbzxm


    已修改
作者: yxbzxm    时间: 2014-9-29 23:44

回复 8# CrLf


    还是不对呀 不输放任何数字 一按确认键 就转到有上去了
作者: yxbzxm    时间: 2014-9-30 00:08

回复 5# CrLf

非常感谢
作者: CrLf    时间: 2014-9-30 00:08

回复 9# yxbzxm


    加上输入检测,已修改
作者: yxbzxm    时间: 2014-10-1 02:32

回复 11# CrLf
  1. @echo off
  2. set /p input=请输入字符串:
  3. cmd /v /c "echo;!input!"|findstr /v "[^0-9]" && (type 帐号管理.txt | cmd /c findstr /rc:"\<%%input%%\>" && echo 客户存在 ) || echo 非法帐号
  4. pause
复制代码
我是想在上面这段代码的 暂停 pause 后

再根据有 客户存在 或 非法帐号
开始新的动作
比如:客户存在就启动一个程序
  如果非法的帐号 就弹出一个警告!后退出.




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