Linux之expect、tcl

expect是一个自动化交互软件,可用于linux终端自动交互(模拟人与终端的交互)。它是基于tcl(一种语言l实现的软件,命令行安装命令为sudo apt install expect(apt是abuntu中一个自带的安装包管理器)

 

推荐在常用的shell解释器下运行expect命令(expect <<EOF  xxxxxxxxxxxxxxxxxx   expect eof)

1
2
3
4
5
6
7
8
#! /bin/sh
echo "begin"
expect <<EOF
send "begin again\n"<br># send "ls\n"  网上别人的博客使用send可以调用linux命令,我却无法成功,只能用spawn。是因为它们开启了一个新进程,我却没有?
spawn sudo pwd
expect ": "
send "362143\r"
expect eof

# 另一种在sh解释器下调用的方法,有点煞笔,不建议使用。题外话∶bin/bash和bin/sh基本没啥区别。

# #!/bin/sh
# echo "begin"
# expect -c "
# send \"11\n\"
# spawn sudo pwd
# expect \": \"
# send \"362143\r\"
# expect eof
# "

posted @   xzjeff  阅读(283)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示