日期:2014-05-16  浏览次数:20777 次

telnet 告警执行命令问题
各位好,有问题请教各位,先谢谢了!
问题:telnet远程执行命令,杀掉特定的进程,并删除几个目录。
我是这样用的:
command="ps -ef | grep text| grep -v grep |awk '{print "kill",$2}'|sh;cd ${HOME};rm -rf text"
  (echo $login_name;sleep 1;echo $login_pwd;sleep 1;echo $command;sleep 1;exit)|telnet $host_ip > tel_res
echo $tel_res;


最后打印出:getwinsize:ioctl: A specified file does not support the ioctl system call.
我登陆到被远程的主机上去看,进程没有被杀掉,文件目录也没有删除。
请问各位,要怎么样才能实现我这个需求?
会不会是代码中"kill"中的引号与外层的引号有冲突?

求解答,谢谢!

------解决方案--------------------
转义一下呢
command="ps -ef | grep text| grep -v grep |awk '{print \"kill\",\$2}'|sh;cd \${HOME};rm -rf text"