shell编程之免交互

目录

前言

一、Here Document

1、Here Document简介

2、Here Document应用

二、expect

1、expect简介

2、基本命令

3、expect应用

总结:


前言

       实在不知道前言写什么。

一、Here Document

1、Here Document简介

        使用 I/O 重定向的方式将命令列表提供给交互式程序或命令,比如 ftp、cat 或 read 命令。

HereDocument是标准输入的一种替代品,可以帮助脚本开发人员不必使用临时文件来构建输入信

息,而是直接就地生产出一个文件并用作命令的标准输入。

语法格式:

<<标记 (此处标记前面的空格可以被忽略)

内容

标记 (输入追加定向,结尾标记必须顶格写,它前面和后面不能有任何字符,包括空格)

       特殊字符“<<”在标记和命令之前,这样做的目的是将命令块的输出重定向到程序或命令的

stdin。标记的选择要确保不会出现在其他地方,避免出现混淆;两个标记之间的内容被当做是一个

文件并用作“命令”的标准输入。另外 Here Document 也可以与非交互式程序和命令一起使用。

◆四点注意事项:

标记可以使用任意的合法字符;

结尾的标记一定要顶格写,前面不能有任何字符;

结尾的标记后面也不能有任何字符(包括空格);

    开头的标记前后的空格会被省略。

2、Here Document应用

①、Here Document简单应用

 

[root@kang mytext]# cat <<eof    #直接将输入得内容输出
> hello world
> eof
hello world
[root@kang mytext]# cat > ipadd.txt <<eof  #将输入保存到文件,它会新建文件并保存
> 192.168.90.22
> 192.168.10.11
> eof
[root@kang mytext]# cat ipadd.txt    
192.168.90.22
192.168.10.11
[root@kang mytext]# cat >> ipadd.txt <<eof        #将输入内容追加并保存到文件
> 110.110.110.0
> eof
[root@kang mytext]# cat ipadd.txt 
192.168.90.22
192.168.10.11
110.110.110.0
[root@kang mytext]#

②、Here Document写入文件的三种方式

[root@kang mytext]# cat >username.txt <<eof   #进入免交互编辑文件方法一
……
[root@kang mytext]# cat <<eof >username.txt    #进入免交互编辑文件方法二
……
[root@kang mytext]# tee  username.txt <<eof      #进入免交互编辑文件方法三
……

③、read命令赋值免交互和更改用户密码免交互

[root@kang mytext]# read a <<eof
> baidu.com
> eof
[root@kang mytext]# echo $a
baidu.com
[root@kang mytext]# passwd lisi <<eof
> 123456
> 123456
> eof
更改用户 lisi 的密码 。
新的 密码:无效的密码: 密码少于 8 个字符
重新输入新的 密码:p
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值