Chinaunix

标题: linux虚拟机下编写shell脚本语言,有劳各位帮我看看~! [打印本页]

作者: 更山一层楼    时间: 2009-09-23 08:43
标题: linux虚拟机下编写shell脚本语言,有劳各位帮我看看~!
小弟刚接触shell,尝试着写了一个简单的shell脚本。遇到了一些问题~

环境:在虚拟机下,我运行./client程序,然后我登录(输入“login admin admin”),login以后才能进行一些设置。

我的shell脚本是这样的:

#!/bin/sh

#test.sh

ps -ef |grep -v 'grep'|grep 'client'|grep './client start' > /dev/null

if [ $? -eq 0 ]

then

echo client run ok!

else

/home/work/IPCAM_APP/test_my_app/client 192.168.0.235

sleep 5



echo server is ERROR!

fi

以上脚本,我在虚拟机下运行./test.sh可以正常运行我上面说的client,现在我要脚本实现sleep 5秒后自动登录(也就是接下来的login+用户名+密码)

请问我该如何实现啊?恳请论坛的各位朋友帮助了,谢谢~!
作者: 零二年的夏天    时间: 2009-09-23 08:51
这个要麻烦点,你可能要参考expect来做。不过,也许你可以换个思路。
作者: cuci    时间: 2009-09-23 08:57
expect可以尝试,交互很多都是这样来实现
不知道你的client程序是干什么用的,如果可以改,直接把pw加进去就更省事了
作者: 更山一层楼    时间: 2009-09-23 09:44
非常感谢楼上2位的指点。
我的这个client就类似于一个虚拟的客户端,只有登录用户名和密码才能进客户端里面去操作。当然了,要想它运行,之前还必须得运行个服务器。
另外,再问一个很菜的问题:expect可以加到shell里面去用吗?还是这个必须单独来使用?
作者: cuci    时间: 2009-09-23 09:59
可以调用
作者: vermouth    时间: 2009-09-23 12:33
这个 ps 肯定是运行成功的啊,你得要换一个命令了。
作者: 更山一层楼    时间: 2009-09-23 12:45
请教楼上,我该如何更改命令?

   新手,还望多多指教~
作者: zyp339025518    时间: 2009-09-23 13:14
帮顶啊!
作者: 更山一层楼    时间: 2009-09-24 11:10
不能沉下去了啊,问题还没解决~

我手动使用“login admin admin” 命令是在客户端上手动输入的。也就是我脚本里的“./client”要想客户端起来,那服务器得先运行。服务器我运行的是“./ipcam”(我公司是做IPCAM的)。

现在我想要这个脚本实现的功能是:sleep 5秒后,在我的客户端起来之后自动“login admin admin”
作者: vermouth    时间: 2009-09-24 11:27
标题: 回复 #7 更山一层楼 的帖子
wc -l 结果!=0




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2