linux免交互

如何对文本内容进行面交互

here document 免交户

对文本内容进行操作:

标准输入的替代品

语法格式    命令  << 标记

            内容

            标记结尾

命令:linux的命令

注意事项:

1标记可以使用任意合法字符。(字母和数字,一般不使用特殊符号,以字母开头 EOF)

2结尾的标记要顶格写,而且结尾的标记前不能有任何字符(空格也不能有)

3开头的标记可以加空格,但是会被自动省略(开头标记前,一般也没有空格)

read 的方式赋值 给 i  i的值为test

免交互给文本输入内容 (会覆盖)不覆盖要>>

tee 本身就具有标准输出的作用,可以直接把内容输入到文件当中。会自己创建文件夹

整体赋值给变量

会输入自己定义的值和var 的值

给eof加个’’var的值就传不进来了,就只输出var这个字符

加-‘’会消除每行之前的tab键

expect 免交互

要声明使用

自动化控制和测试,解决shell脚本中交互的问题

expect建立在tcl语言基础上的工具。

执行方式:sh bash

必须赋权执行

.sh 结尾

./ 执行

常用的转义字符

\n 相当于换行,打了一个回车键

\t 制表符,相当于tab键

\r 就是回车

\b 退格符

spawn

申明命令

spawn后面一般都是linux的命令,表示开启会话,或者进程,跟踪后续的交互信息

expect

捕获 命令的相关内容,字符串匹配

捕获的内容,是为了后续模拟用户需要输入的内容

send 发送   一般和expect一起使用

发送指令,模拟用户的输入

方法一:

expect “密码” {send “123456\r” }

写在一行,必须要花括号括起来

方法二

expect”密码”

send “123456\r”

换行写不需要花括号

方法三

多分支匹配  { 要在expect后面不能换行另写

结束符:

expect eof

表示交互结束,等待执行结束,退回到原来的用户

expect 默认等待时间10秒

interact

执行完成之后保持状态,把控制权交给控制台,然后停留在目标终端,不会退回源终端

注意点:两个结束符二选一

set

定义变量,设置参数

set timeout 5       等待时间默认10秒变成5秒

格式:

exp_continue

和expect捕获命令结合起来一起使用,附加在expect判断项之后,匹配到expect的捕获内容之后,还能够继续判断expect捕获语句当中的其他选项

格式:

send_user

回显命令,和echo一样,打印内容

免交互创建用户:

嵌入执行,将expect免交互的过程和shell结合起来

ssh su 会涉及到终端切换,不建议使用嵌入式执行

远程登录免交互:

传参的方式免交互执行,自定义用户密码,来远程连接

打印结果后面要加\n 不然不能识别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值