/usr/123.txt\r" sleep 10 expect eof" />
红联Linux门户
Linux帮助

在弹出的终端里输入命令!(已经解决)

发布时间:2008-02-25 14:44:27来源:红联作者:lyscu
怎么实现这样的功能:
通过设置自启动,开机可以打开一个xterm;
利用expect,可以在终端里输入相关命令,如:
#!/usr/bin/expect
spawn su
expect "Password:"
send "123456\r"
sleep 2
expect "]#"
send "pwd >/usr/123.txt\r"
sleep 10
expect eof
exit

现在是,如何将两者结合起来,也就是在弹出的终端xterm里,自动运行上述脚本。
困惑了好久,万分感谢!

[ 本帖最后由 lyscu 于 2008-2-26 09:54 编辑 ]
文章评论

共有 4 条评论

  1. lyscu 于 2008-02-26 09:54:00发表:

    谢谢你,已经解决。

  2. xcwen 于 2008-02-25 17:35:23发表:

    在 expect 脚本中
    把 sleep 10 改成 interact 就OK了。。

  3. lyscu 于 2008-02-25 16:17:16发表:

    谢谢!
    还有个问题,我不想让这个终端窗口关闭,让他一直开着,怎么设置啊?

  4. xcwen 于 2008-02-25 15:34:41发表:

    这个是可以实现的。
    例子:
    将expect 脚本保存在成 /home/xxx/abc.exp.
    chmod +x abc.exp
    在命令行测试 : /home/xxx/abc.exp.

    成功 next:
    (gnome)主菜单->附件->终端 , 右击->添加到桌面, 在桌面上得到一个终端启动器。
    右击->属性->启动器->命令 ,修正为:gnome-terminal -x /home/xxx/abc.exp (必需是绝对路径)
    双击它测试,是不是成功。
    成功 next :
    (gnome)主菜单->系统 ->首选项->会话->启动程序->创建
    ->复制 gnome-terminal -x /home/xxx/abc.exp 到三个框中,OK。

    现在重新登入就应该OK了。