中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: [求助]FTP错误信息捕捉问题 上一主题 | 下一主题
zyz0304360
中级用户




积分 257
发帖 123
注册 2008-1-5
来自 烟台
状态 离线
『楼 主』:  [求助]FTP错误信息捕捉问题

使用FTP时,生成了一个日志文件
ftp.exe -n -s:%temp%\Ftp.bat >>"ftp.log"

现在想捕捉下面字符串中的错误信息

type ftp.log|findstr "530 Please login with USER and PASS"&&goto:error

type ftp.log|findstr "Not connected"&&goto:error

type ftp.log|findstr "The system cannot find the file specified"&&goto:error

type ftp.log|findstr "File not found"&&goto:error

各位高手:
1. 字符串中的‘ ’空格是不时“或”的意思
    比如:"File not found"中是不是找到File或not或found就goto:error

2.怎样把这几个语句写道一起呢?
   只用一个type ftp.log|findstr “。。。。。。。。。。”

请各位高手指点谢谢



路 是自己选的
学习 是为了具备解决问题的能力
2008-1-15 15:37
查看资料  发短消息 网志  OICQ (625621812)  编辑帖子  回复  引用回复
zyz0304360
中级用户




积分 257
发帖 123
注册 2008-1-5
来自 烟台
状态 离线
『第 2 楼』:  

发现问题了
SQLState = 23000, NativeError = 2627
字符串中的空格
“ ”是“或”的意思吧

type ftp.log|findstr "1 2 3 0"&&goto :error
结果命令行解释器中把所有含“1”,“2”,“3”,“0”的行
全都列出来了



路 是自己选的
学习 是为了具备解决问题的能力
2008-1-15 16:10
查看资料  发短消息 网志  OICQ (625621812)  编辑帖子  回复  引用回复
zyz0304360
中级用户




积分 257
发帖 123
注册 2008-1-5
来自 烟台
状态 离线
『第 3 楼』:  

第一个问题解决了

加个/C:参数就行了

我查的资料


FINDSTR
在文件中寻找字符串。

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/F:file]
        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
        strings [[drive:][path]filename[ ...]]

  /B        在一行的开始配对模式。
  /E        在一行的结尾配对模式。
  /L        按字使用搜索字符串。
  /R        将搜索字符串作为一般表达式使用。
  /S        在当前目录和所有子目录中搜索
              匹配文件。
  /I         指定搜索不分大小写。
  /X        打印完全匹配的行。
  /V        只打印不包含匹配的行。
  /N        在匹配的每行前打印行数。
  /M        如果文件含有匹配项,只打印其文件名。
  /O        在每个匹配行前打印字符偏移量。
  /P        忽略有不可打印字符的文件。
  /OFF[LINE] 不跳过带有脱机属性集的文件。
  /A:attr   指定有十六进位数字的颜色属性。请见 "color /?"
  /F:file   从指定文件读文件列表 (/ 代表控制台)。
  /C:string 使用指定字符串作为文字搜索字符串。
  /G:file   从指定的文件获得搜索字符串。 (/ 代表控制台)。
  /D:dir    查找以分号为分隔符的目录列表
  strings   要查找的文字。
  [drive:][path]filename
            指定要查找的文件。

除非参数有 /C 前缀,请使用空格隔开搜索字符串。
例如: 'FINDSTR "hello there" x.y' 在文件 x.y 中寻找 "hello" 或
"there" 。  'FINDSTR /C:"hello there" x.y' 文件 x.y  寻找
"hello there"。

一般表达式的快速参考:
  .        通配符: 任何字符
  *        重复: 以前字符或类别出现零或零以上次数
  ^        行位置: 行的开始
  $        行位置: 行的终点
  [class]  字符类别: 任何在字符集中的字符
  [^class] 补字符类别: 任何不在字符集中的字符
  [x-y]    范围: 在指定范围内的任何字符
  \x       Escape: 元字符 x 的文字用法
  \<xyz    字位置: 字的开始
  xyz\>    字位置: 字的结束



路 是自己选的
学习 是为了具备解决问题的能力
2008-1-15 16:30
查看资料  发短消息 网志  OICQ (625621812)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: