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

阿里云域名服务seo的工作流程

阿里云域名服务,seo的工作流程,建公司网站哪家公司好,延边有没有做网站的交互:我们发出指令控制程序的运行,程序在接收到指令之后按照指令的效果做出对应的反应。 免交互:间接的通过第三方的方式把指令传送给程序,不用直接的下达指令。 1、here document免交互 ere document免交互:是命令…

交互:我们发出指令控制程序的运行,程序在接收到指令之后按照指令的效果做出对应的反应。

免交互:间接的通过第三方的方式把指令传送给程序,不用直接的下达指令。

1、here document免交互

ere document免交互:是命令行格式,也可以写在脚本当中,通过I/O重定向的方式将命令的列表传送给交互式程序或者命令

是标准输入的一种替代品,代替了人工的输入方式

语法格式:

命令(linux的系统命令)<<标记

内容1

内容2

内容3

标记

#wc 统计字符串
[root@localhost /]# wc -l << xy102
> 123
> 456
> 789
> xy102
3

注意事项:

1、标记可以是任意的合法字符(一般不用特殊字符,不以数字开头,通常以EOF作为默认的标记位)

2、结尾的标记位一定要顶格写,且前面不能有任何字符,空格也不行。

3、结尾的标记后面也不能有任何字符,包括空格

4、开头的标记前后的空格都会被省略掉

#使用免交互修改用户密码
[root@localhost /]# passwd dn <<EOF
> 123
> 123
> EOF
#使用免交互赋值
[root@localhost /]# read i << EOF
123
EOF
[root@localhost /]# echo $i
123

2、tee命令免交互

[root@localhost opt]# tee jh1.txt <<EOF
> 1
> 2
> 3
> EOF
1
2
3

3、引入变量

创建mjh1.sh脚本写入以下内容
[root@localhost opt]# cat mjh1.sh 
#!/bin/bash
file="test9.sh"
i=school
cat > $file <<EOF
I am going to $i
EOF

运行脚本生成test9.sh脚本文件
查看test9.sh脚本内容 

 

4、 整体变量赋值

将var字符串内容整体赋值给myvar
#!/bin/bash
var="good I am going to school"
#整体赋值方式
myvar=$(
cat <<EOF
zhangsan say
$var
EOF
)
echo  $myvar输出结果
[root@localhost opt]# sh mjh1.sh 
zhangsan say good I am going to school将EOF加单引号,关闭整体变量赋值
#!/bin/bash
var="good I am going to school"
myvar=$(
cat <<'EOF'
zhangsan say
$var
EOF
)
echo  $myvar
输出结果
[root@localhost opt]# sh mjh1.sh 
zhangsan say $var

5、Expect实现免交互

用tcl语言写的一个工具,主要用自动化控制和测试。解决shell脚本交互的问题

需要先下载

[root@localhost opt]# yum -y install expect

实例

#!/usr/bin/expect
#声明解释器,不再是默认的bash,需要声明,使用whereis expect 查找目录位置
set timeout 5
#set 设置,timeout 超时时间,expect有一个默认的超时时间10秒,设置超时时间5秒
#set也可以作为设置变量
spawn passwd dn
#spawn用来声明需要执行的命令,开启会话过程,并且跟踪后续的交互信息
expect "新的 密码:"
#expect来捕获需要执行的命令行
#捕获不需要完整的可以使用*代表所有
send "zlm12388\r"
#send 表示输入指令代码,\r表示回车
expect "重新输入新的 密码:"
send "zlm12388\r"expect eof
#交互指令结束之后,会退回原用户,切换回之前的用户
#interact
#留在当前用户,不会改变#最后一定要有结束语,以上两个只能选一个

 执行脚本要先赋权,使用./的方式执行  

实例:普通用户进行切换 

#!/usr/bin/expect
set timeout 5
set username [lindex $argv 0]
set password [lindex $argv 1]
#位置变量#开始追踪
spawn su - $username
#免交互开始执行
expect "密码"
send "$password\r"
#继续捕获
expect "~]$"
send_user "ok"
#send_user =echo 打印指定内容
#结束语
interact

 实现效果

结束语使用 expect eof效果

6、 嵌入执行模式

嵌入执行模式,在shell当中加入expect,涉及到环境切换的场景不建议使用嵌套

例如ssh su 不适用使用嵌入模式

#!/bin/bash
user=$1
password=$2
#非交互命令,使用的是shell
useradd $user
#嵌入免交互
/usr/bin/expect <<-EOF
spawn passwd $user
expect "新的*"
send "$password\r"
expect "重新*"
send "$password\r"
expect eof
EOF

 实现效果

7、使用ssh连接其他主机  

基础版

#!/usr/bin/expect
set ip 192.168.10.30
set user root
set password 123
set timeout 5#进入命令行
spawn ssh $user@$ip
expect {"(yes/no)" {send "yes\r";exp_continue}
#这里捕获两次,表示该项被匹配之后,继续匹配其他的指定的内容
#类似于循环的continue,允许expect语句继续向下执行
"password" {send "$password\r"}
}
interact

实验效果

进阶版

#!/usr/bin/expect
set timeout 5
#使用位置变量,手动输入
set hostname [lindex $argv 0]
set password [lindex $argv 1]#进入命令行
spawn ssh $hostname
expect {
#出现异常情况显示实现
"NO route to host" {send_user "主机名/ip有误\n"}
"Connection refusedi" {send_user "ssh连接拒绝\n"}
"(yes/no)" {send "yes\r";exp_continue}
"password" {send "$password\r"}
}
interact

8、小练习

免交互实现硬盘分区,分一个区即可,分完之后,第一步要格式,第二步实现挂载,挂载(手动挂载)然后在这个分区的挂载文件创建一个文件,写入内容“学习真好”,并且打印出结果,在一个脚本里完成,嵌入模式。

#!/bin/bash
# 使用shell
scan
# 列出所有块设备
lsblk
set timeout 5
# 设置超时时间为5秒
/usr/bin/expect <<-EOF
spawn fdisk /dev/sdb
#进行分区
expect  "命令" 
send "n\r"
expect  "(default p)"
send "p\r"
expect  "分区号" 
send "1\r"
expect  "起始 扇区 " 
send "\r"
expect  "Last" 
send "\r"
expect  "(输入 m 获取帮助)" 
send "w\r"expect eof
EOF
# 刷新分区表
partprobe /dev/sdb
# 列出所有块设备以检查新分区 以及过滤想要出现的分区
lsblk | grep sdb1 >& /dev/null
if [[ $? -eq 0 ]]
then
echo "分区被建立"
mkfs.xfs -f /dev/sdb1
mkdir /data1
mount /dev/sdb1 /data1
df -hT
else
echo "分区没有被建立"
fi
#写入内容
cat >/data1/test1.txt <<EOF
学习真好
EOF
cat /data1/test1.txt

输出效果

 

http://www.yayakq.cn/news/880733/

相关文章:

  • 静态网站 源码wordpress 改logo
  • flash做网站的论文企业网站上海熙
  • 中英文网站前端怎么做品牌广告设计制作公司网站源码
  • 亿缘网站建设企业网站建设排名
  • 营销网站建设设计装修公司的收费标准
  • wordpress 手工网站wordpress修改轮播图
  • 动漫做美食的视频网站数据库用于网站建设哪个好
  • 保定网站建设公司大全建设网站的目的
  • 山东省建设局拖欠工资网站网站开发人员是做什么的
  • 扬州网站商城建设价格杭州住房和城乡建设局网站
  • 简单flash网站模板手机网页游戏平台
  • 温州做网站建设多少钱通辽大柒网站建设有限公司
  • 慧聚创新网站建设网件路由器做网站
  • h5个人网站模板下载专门做视频的网站
  • 天津做网站的公司大良营销网站建设价格
  • 怎么做分享网站西峰住房和城乡建设局网站
  • 如何制作网站要钱吗三维家设计新手教学教程
  • 平台推广策划文案seo推广方式是什么呢
  • 游乐园网站建设北京市运动会网站建设
  • 口碑好的定制网站建设服务商wordpress手机主题浮动菜单
  • 贸易网站建设案例物流做网站哪家好
  • 外贸网站免费建设外贸网站做多少钱的
  • 济南烨铭网站建设网页设计精选网站
  • 招生就业网站开发详情百度上找不到网站
  • 众筹网站建设 网站定制开发wordpress去掉导航框
  • 电子商务网站建设与管理学习心得网页类界面图片
  • 彩票网站开发系统如何搭建长沙有哪些大型工厂
  • 网站为什么需要备案号工作证的照片几寸
  • 做电商网站一般多少钱wordpress主页添加meta
  • 龙岗网站设计市场视频分享网站模板