免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1295 | 回复: 6
打印 上一主题 下一主题

怎么保存操作交互信息? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-12-22 10:52 |只看该作者 |倒序浏览
例如 在终端操作平台下

==============================

[root] # cmp  exp_file

Pass 1 : Change happened, resumed<y>? yes
Pass 2 : Change happened, clear<y>? yes
...

[root] #

===============================
我就想把Pass1 和Pass 2的内容保存到一个文件中
我试了
[root]#  y|cmp exp_file      2> store-file

store-file中没有Pass1内容。
怎么保存呢?

论坛徽章:
0
2 [报告]
发表于 2004-12-22 11:26 |只看该作者

怎么保存操作交互信息?

试试这样可以吗?
cmp exp_file 1> store-file 2>&1

论坛徽章:
0
3 [报告]
发表于 2004-12-22 11:30 |只看该作者

怎么保存操作交互信息?

使用tee看看

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2004-12-22 11:37 |只看该作者

怎么保存操作交互信息?

用script试试看

论坛徽章:
0
5 [报告]
发表于 2004-12-22 11:54 |只看该作者

怎么保存操作交互信息?

我发现问题不是 文本输不出来 。而是 Pass 1 和 Pass 2 需要按“Yes”回车

因为如果exp_file 是正常时,也就是 不需要按“y”的话,“ # cmp ex_file 〉tmp_file” 都是可以的.

这个cmp 不支持 # y | cmp  exp_file 这种形式的自动按yes, 还有其他的
自动方式么?

论坛徽章:
0
6 [报告]
发表于 2004-12-22 12:07 |只看该作者

怎么保存操作交互信息?

未测试

#!/bin/expect
spawn exp_file
expect "ass 1 : Change happened, resumed<y>?"
send "yes"



好久没用expect,不知道有没有语法错误,提供个思路,自己调试一下

论坛徽章:
0
7 [报告]
发表于 2004-12-22 16:00 |只看该作者

怎么保存操作交互信息?

原帖由 "bitbull" 发表:
未测试

#!/bin/expect
spawn exp_file
expect "ass 1 : Change happened, resumed<y>?"
send "yes"



好久没用expect,不知道有没有语法错误,提供个思路,自己调试一下


感谢楼上给的思路。
以前不知道有个expect,刚刚学用expect完成了这个要求。
帖个过程,给大家,希望能有用。
===========================================

装expect之前,先要装tcl, 可以到www.rpmfind.net中找到这两个包
两个rpm包装好后,就可以写expect code了。
注意,expect的路径可能不同,要用find找到本机的路径
例如我的是
#!/usr/bin/expect

然后就是循环的找

spawn  cmp  file

for {} {1} {} {

           expect " Pass * "     { send  " y"}
           expect eof                { exit 0 }
  

}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP