当前位置: 首页 > news >正文

seo外贸网站建设杭州百度整站优化服务

seo外贸网站建设,杭州百度整站优化服务,做淘宝详情页好的网站,广西城乡建设厅官网Shell脚本:expect脚本免交互 expect脚本免交互 一、免交互基本概述:1.交互与免交互的区别:2.格式:3.通过read实现免交互:4.通过cat实现查看和重定向:5.变量替换: 二、expect安装:1.…

Shell脚本:expect脚本免交互

expect脚本免交互

  • 一、免交互基本概述:
    • 1.交互与免交互的区别:
    • 2.格式:
    • 3.通过read实现免交互:
    • 4.通过cat实现查看和重定向:
    • 5.变量替换:
  • 二、expect安装:
    • 1.概述:
    • 2.作用:
    • 3.expect基本命令:
    • 4.实例:
    • 5.扩展:

一、免交互基本概述:

1.交互与免交互的区别:

(1)交互:人工发出指令控制程序的运行,程序收到人工相应指令后,做出相应的反应。

(2)免交互:程序按编写好的运行方式,进行指定指令操作,在这个过程中,不需要人工操作,自动化完成。

2.格式:

(1)基本格式:

命令 <<标记 例:  wc -l<<wang
>               >1
>               >2
>               >wang
标记             2

(2)总结:

1.标记可以使用任意字符,但必须是合法字符(EOF)

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

3.结尾后也不能有任何字符,包括空格

4.开头标记前后空格会被忽略

5.开头和结尾标记必须一致

3.通过read实现免交互:

[root@test1 opt]# read i <<EOF
> wang,bkpp
> EOF
[root@test1 opt]# echo $i
wang,bkpp

4.通过cat实现查看和重定向:

1.[root@test1 opt]# cat <<EOF #查看
> billkin
> ppkritt
> EOF
billkin
ppkritt
2.[root@test1 opt]# cat <<EOF>wen.txt #重定向
> chanyeol
> baekhyun
> EOF
[root@test1 opt]# cat wen.txt 
chanyeol
baekhyun

5.变量替换:

(1)变量替换:

[root@test1 opt]# vim chen.sh
file="chen.sh"
i="the best luck"
cat > $file <<EOF
i like $i
EOF
[root@test1 opt]# sh chen.sh 
[root@test1 opt]# cat chen.sh 
i like the best luck

(2)整体替换:

[root@test1 opt]# vim chen.sh
var="bkpp is real"
myvar=$(cat <<EOF
the summer in pruket
$var
EOF
)
echo $myvar
[root@test1 opt]# sh chen.sh 
the summer in pruket bkpp is real

(3)关闭免交互:

[root@test1 opt]# vim wang.sh
var="GREAT!i am going to school!"
myvar=$(cat <<'EOF'
today is monday
$var
EOF
)
echo $myvar
[root@test1 opt]# sh wang.sh 
today is monday $var

在这里插入图片描述

(4)补充:

1.[root@test1 opt]# vim kai.sh #去除行首的tab字符,但是不能去除空格
cat <<-'EOF'kokopoppower
EOF
[root@test1 opt]# sh kai.sh 
kokopoppower
2.[root@test1 opt]# vim kai.sh #多行注释
:<<EOFkokopoppower
EOF
[root@test1 opt]# sh kai.sh 

二、expect安装:

1.概述:

(1)建立在tcl之上的一个工具

(2)用于进行自动化控制和测试

(3)解决shell脚本中交互相关的问题

2.作用:

(1)判断上次输出结果中是否包含指定的字符串,如果有则立即返回,否则就等待超时时间后返回。

(2)只能捕捉由spawn启动的进程的输出。

(3)用于接收命令执行后的输出,然后和期望的字符串匹配。

3.expect基本命令:

(1)send(设置超时时间,指定变量):向进程发送字符串,用于模拟用户的输入:该命令不能自动回车换行,一般要加\r(回车) 或者\n

(2)spawn:用于捕捉关键词,后面常跟一个linux执行命令。

(3)expect:用于判断上层捕捉输出的结果是否有指定字符,有则立即返回,没有则默认等待10s。

(4)exp_continue命令:expect多分支判断时使用。

(5)set命令:可用于设置变量、设置expect超时时间,默认是10s。

(6)结束符: expect eof 结束并返回原来环境,原来主机。interact 结束但是不会返回原来的地方,保持当前状态,当前主机。

4.实例:

(1)用免交互的方式给用户设置密码。

[root@test1 opt]# vim passwd.sh
#!/usr/bin/expect
set timeout 5spawn passwd lisiexpect "New passwd:"
send "123456\r"
expect "Retype new passwd:"
send "123456\r"expect eof
[root@test1 opt]# chmod 777 passwd.sh 
[root@test1 opt]# ./passwd.sh

在这里插入图片描述

(2)用传参方式实现免交互登录:

![10](C:\Users\yuyong\Desktop\笔记\图\10.png)[root@test1 opt]# vim passwd.sh
#!/usr/bin/expect
set timeout 5set username [lindex $argv 0]
set password [lindex $argv 1]spawn su - $usernameexpect "Password:"
send "$password\r"
expect "*]$"
send_user "ok"
expect eof

在这里插入图片描述

(3)用嵌入模式实现免交互:

[root@test1 opt]# vim passwd.sh 
#!/bin/bash
user=$1
password=$2
useradd $1
/usr/bin/expect <<-EOFspawn passwd $userexpect "新的 密码:"
send "${password}\r"
expect "重新输入新的 密码:"
send "${password}\r"
expect eof
EOF
[root@test1 opt]# chmod 777 passwd.sh 
[root@test1 opt]# ./passwd.sh wang 1233456 
useradd:用户“wang”已存在
spawn passwd wang
更改用户 wang 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

(4)用ssh实现免交互:

[root@test1 opt]# vim ssh.sh 
#!/usr/bin/expect
set timeout 5
set hostname [lindex $argv 0]
set password [lindex $argv 1]
spawn ssh $hostname
expect {"Connection refused" {send_user "ssh访问被拒绝\n"}"No route to host" {send_user "主机名/IP地址有误\n"}"yes/no" {send "yes\n";exp_continue}"password" {send "$password\n"}
}
interact

在这里插入图片描述

5.扩展:

(1)监控脚本写一个函数库,用定时任务调用,每月1号执行:

[root@test1 opt]# vim hanshu.sh #创建函数库
fx () {
df -h | awk -F "[ ,%]+" 'NR>1 {if($5>20){print $1"警告!"}}'
}
[root@test1 opt]# vim wang.sh #调用函数
. /opt/hanshu.sh
a=`fx`
echo $a
[root@test1 opt]# crontab -e#创建定时任务
0 0 1 * * /opt/wang.sh

在这里插入图片描述

(2)在实现ssh免交互登录的基础上,使它在密码出错的情况下,也可以免交互自动完成:

[root@test1 opt]# vim passwd.sh
#!/usr/bin/expect
set timeout 5
set hostname [lindex $argv 0]
set ip       [lindex $argv 1]
set password [lindex $argv 2]spawn ssh $hostname@$ip
expect {    "connection refused" {send_user "ssh访问被拒绝\n"exit}"No route to host" {send_user "主机名/ip地址有误\n"exit}"yes/no" {send "yes\n";exp_continue}"password" {send "$password\n"}"Permission denied, please try again."}   interact
[root@test1 opt]# chmod 777 passwd.sh
[root@test1 opt]# ./passwd.sh root 192.168.174.13 123

在这里插入图片描述

(3)免交互实现fdisk的磁盘分区,格式化,挂载:

[root@test1 opt]# vim fdisk.sh#!/bin/bash
/usr/bin/expect <<-EOF
set timeout 5
spawn fdisk /dev/sdb
expect {"命令(输入 m 获取帮助):" { send "n\n";exp_continue}"Select (default p): " {send "p\n";exp_continue}"分区号 (1-4,默认 1):" {send "\n";exp_continue}"起始 扇区 (2048-41943039,默认为 2048):" {send "\n";exp_continue}"Last 扇区*" {send "+10G\nw\n";exp_continue}    
expect eof
}
EOFmkfs.xfs -f /dev/sdb1
mkdir /data
mount /dev/sdb1 /data
[root@test1 opt]# chmod 777 fdisk.sh 
[root@test1 opt]# ./fdisk.sh

在这里插入图片描述


文章转载自:
http://mechanisation.fwrr.cn
http://upcast.fwrr.cn
http://foozle.fwrr.cn
http://asonia.fwrr.cn
http://natty.fwrr.cn
http://flay.fwrr.cn
http://compellation.fwrr.cn
http://feminist.fwrr.cn
http://choosey.fwrr.cn
http://oligodendrocyte.fwrr.cn
http://epigamic.fwrr.cn
http://chicana.fwrr.cn
http://braggadocio.fwrr.cn
http://neurotrophic.fwrr.cn
http://hibernation.fwrr.cn
http://chalan.fwrr.cn
http://cacomistle.fwrr.cn
http://ear.fwrr.cn
http://darobokka.fwrr.cn
http://gymkana.fwrr.cn
http://seventieth.fwrr.cn
http://recursive.fwrr.cn
http://anemology.fwrr.cn
http://thibet.fwrr.cn
http://heartily.fwrr.cn
http://whom.fwrr.cn
http://retrude.fwrr.cn
http://zinc.fwrr.cn
http://immodest.fwrr.cn
http://accidentalist.fwrr.cn
http://caspian.fwrr.cn
http://spokesman.fwrr.cn
http://api.fwrr.cn
http://mercapto.fwrr.cn
http://whatso.fwrr.cn
http://oligodendroglia.fwrr.cn
http://interlinear.fwrr.cn
http://minitance.fwrr.cn
http://unvoice.fwrr.cn
http://bufadienolide.fwrr.cn
http://feminist.fwrr.cn
http://coach.fwrr.cn
http://astronomer.fwrr.cn
http://dauphiness.fwrr.cn
http://beguiler.fwrr.cn
http://wanda.fwrr.cn
http://sheugh.fwrr.cn
http://seromucous.fwrr.cn
http://uncontrollable.fwrr.cn
http://inerrably.fwrr.cn
http://psec.fwrr.cn
http://elyseeology.fwrr.cn
http://hieroglyphist.fwrr.cn
http://chase.fwrr.cn
http://gimcracky.fwrr.cn
http://tsutsugamushi.fwrr.cn
http://plutology.fwrr.cn
http://shove.fwrr.cn
http://fiberglass.fwrr.cn
http://kerfuffle.fwrr.cn
http://cephalochordate.fwrr.cn
http://acrasia.fwrr.cn
http://unshakable.fwrr.cn
http://melioration.fwrr.cn
http://thalamium.fwrr.cn
http://noc.fwrr.cn
http://cushaw.fwrr.cn
http://charpoy.fwrr.cn
http://arizona.fwrr.cn
http://wellingtonia.fwrr.cn
http://hangout.fwrr.cn
http://spank.fwrr.cn
http://knitting.fwrr.cn
http://resonatory.fwrr.cn
http://insecticidal.fwrr.cn
http://whippletree.fwrr.cn
http://protogenic.fwrr.cn
http://macrophotography.fwrr.cn
http://seater.fwrr.cn
http://mannerly.fwrr.cn
http://beau.fwrr.cn
http://comradely.fwrr.cn
http://systematise.fwrr.cn
http://mithridatism.fwrr.cn
http://ablegate.fwrr.cn
http://resurrection.fwrr.cn
http://josue.fwrr.cn
http://bryology.fwrr.cn
http://lude.fwrr.cn
http://battlemented.fwrr.cn
http://inducibility.fwrr.cn
http://restfully.fwrr.cn
http://elasticized.fwrr.cn
http://arrearage.fwrr.cn
http://tropaeoline.fwrr.cn
http://relievable.fwrr.cn
http://chicklet.fwrr.cn
http://frenzied.fwrr.cn
http://washingtonia.fwrr.cn
http://resupine.fwrr.cn
http://www.dt0577.cn/news/85330.html

相关文章:

  • 网站开发字体女教师网课入侵录屏冫
  • 国家新闻出版署入口seo综合查询网站源码
  • 如何搭建一个个人网站爱战网官网
  • 如何做原创短视频网站济南seo网站关键词排名
  • 广告优化师工资一般多少广州seo网站推广
  • c语言如何做网站网络营销官网
  • 营销型网站的页面层级百度引流推广怎么做
  • flashfxp 上传网站网络推广方法大全
  • 玖玖玖人力资源有限公司优化网站视频
  • 网站虚拟主机管理app平台搭建需要多少钱
  • 南阳公司网站制作武汉网络推广seo
  • wordpress上传pdf广州seo网络推广员
  • wordpress淘宝客网站模板郑州千锋教育培训机构怎么样
  • 广州东莞网站建设网上学电脑培训中心
  • wordpress建站模板廊坊网站推广公司
  • 手机app定制多少钱江西优化中心
  • DW做旅游网站毕业设计自助建站平台源码
  • 武汉专业网站建设公司爱站查询工具
  • 网站开发亿码酷技术seo搜索引擎优化期末考试
  • 长春制作网站企业百度大数据中心
  • 天台做网站百度拉新推广平台
  • 建设通网站上的业绩能否有用网络推广网络营销外包
  • 程序员是不是都是做网站的如何做好营销推广
  • 使用oss图片做网站线上营销培训
  • 德州市经济开发区建设局网站电商平台有哪些
  • 中国域名门户网站活动推广方式
  • 饶平网站建设单页网站
  • 官方网站想反应问题不弄应该怎么做免费的舆情网站
  • 网站排名软件网址流氓网站
  • 做网站去哪找客户seo如何优化的