免交互操作

免交互:也就是不需要进入到文件内部,可以在文件外对文件内容进行操作。

sed改   新增  awk 按行取列。

1、如何对文本内容进行免交互

here document免交互

对文本内容进行操作:标准输入的替代品。

语法格式:命令 << 标记

内容

标记

命令:linux命令   以什么开头以什么结尾

免交互操作_第1张图片

免交互操作_第2张图片

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

2、结尾的标记一定要顶格写,而且结尾的标记前不能有任何字符(空格也不能有)。
3、开头的标记可以加空格,但是会被自动省略(开头标记前,一般也没有空格)。

tee带有标准输入

免交互操作_第3张图片

免交互操作_第4张图片

使用脚本输入

免交互操作_第5张图片

作为整体赋值

免交互操作_第6张图片

关闭传参

免交互操作_第7张图片

消除每行之前的tap

免交互操作_第8张图片

免交互操作_第9张图片

2.expect

expect免交互。
自动化控制和测试,解决shell脚本中交互的问题。
expect建立在tcl语言基础上的工具。

需要yum安装 yum -y install expect

#!/usr/bin/expect 需要注释
执行方式:sh bash必须赋权执行
.sh
./test.sh
/opt/test.sh

常用的转义字符:

\n:相当于换行,约等于回车
\t:制表符,相当于tab键
\r:就是回车
\b:退格符

命令

spawn
spawn后面一般都是linux的命令,表示开启会话或者进程跟踪后续的交互信息。
spawn passwd root
expect
捕获命令的相关内容,字符串匹配
send
发送指令,模拟用户的输入

免交互操作_第10张图片

免交互操作_第11张图片

免交互操作_第12张图片

免交互操作_第13张图片免交互操作_第14张图片

不能直接结束,continue下面接expect和send等命令再输入结束符

完整流程

免交互操作_第15张图片

免交互操作_第16张图片

免交互操作_第17张图片

免交互操作_第18张图片

免交互操作_第19张图片

嵌入执行

免交互操作_第20张图片

免交互操作_第21张图片

免交互操作_第22张图片

免交互操作_第23张图片

传参方式执行

免交互操作_第24张图片

免交互操作_第25张图片

使用免交互的方式实现硬盘分区  格式化   挂载(连挂载目录一并创建好)

你可能感兴趣的:(linux)