国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

web前端設(shè)計(jì)模板seo優(yōu)化師是什么

web前端設(shè)計(jì)模板,seo優(yōu)化師是什么,鄭州網(wǎng)站推廣公司價(jià)格,網(wǎng)站規(guī)劃與建設(shè)ppt模板Shell腳本:expect腳本免交互 expect腳本免交互 一、免交互基本概述:1.交互與免交互的區(qū)別:2.格式:3.通過(guò)read實(shí)現(xiàn)免交互:4.通過(guò)cat實(shí)現(xiàn)查看和重定向:5.變量替換: 二、expect安裝:1.…

Shell腳本:expect腳本免交互

expect腳本免交互

  • 一、免交互基本概述:
    • 1.交互與免交互的區(qū)別:
    • 2.格式:
    • 3.通過(guò)read實(shí)現(xiàn)免交互:
    • 4.通過(guò)cat實(shí)現(xiàn)查看和重定向:
    • 5.變量替換:
  • 二、expect安裝:
    • 1.概述:
    • 2.作用:
    • 3.expect基本命令:
    • 4.實(shí)例:
    • 5.擴(kuò)展:

一、免交互基本概述:

1.交互與免交互的區(qū)別:

(1)交互:人工發(fā)出指令控制程序的運(yùn)行,程序收到人工相應(yīng)指令后,做出相應(yīng)的反應(yīng)。

(2)免交互:程序按編寫好的運(yùn)行方式,進(jìn)行指定指令操作,在這個(gè)過(guò)程中,不需要人工操作,自動(dòng)化完成。

2.格式:

(1)基本格式:

命令 <<標(biāo)記 例:  wc -l<<wang
>               >1
>               >2
>               >wang
標(biāo)記             2

(2)總結(jié):

1.標(biāo)記可以使用任意字符,但必須是合法字符(EOF)

2.結(jié)尾的標(biāo)記一定要頂格寫,前面不能有任何字符

3.結(jié)尾后也不能有任何字符,包括空格

4.開(kāi)頭標(biāo)記前后空格會(huì)被忽略

5.開(kāi)頭和結(jié)尾標(biāo)記必須一致

3.通過(guò)read實(shí)現(xiàn)免交互:

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

4.通過(guò)cat實(shí)現(xiàn)查看和重定向:

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)關(guān)閉免交互:

[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)補(bǔ)充:

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之上的一個(gè)工具

(2)用于進(jìn)行自動(dòng)化控制和測(cè)試

(3)解決shell腳本中交互相關(guān)的問(wèn)題

2.作用:

(1)判斷上次輸出結(jié)果中是否包含指定的字符串,如果有則立即返回,否則就等待超時(shí)時(shí)間后返回。

(2)只能捕捉由spawn啟動(dòng)的進(jìn)程的輸出。

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

3.expect基本命令:

(1)send(設(shè)置超時(shí)時(shí)間,指定變量):向進(jìn)程發(fā)送字符串,用于模擬用戶的輸入:該命令不能自動(dòng)回車換行,一般要加\r(回車) 或者\(yùn)n

(2)spawn:用于捕捉關(guān)鍵詞,后面常跟一個(gè)linux執(zhí)行命令。

(3)expect:用于判斷上層捕捉輸出的結(jié)果是否有指定字符,有則立即返回,沒(méi)有則默認(rèn)等待10s。

(4)exp_continue命令:expect多分支判斷時(shí)使用。

(5)set命令:可用于設(shè)置變量、設(shè)置expect超時(shí)時(shí)間,默認(rèn)是10s。

(6)結(jié)束符: expect eof 結(jié)束并返回原來(lái)環(huán)境,原來(lái)主機(jī)。interact 結(jié)束但是不會(huì)返回原來(lái)的地方,保持當(dāng)前狀態(tài),當(dāng)前主機(jī)。

4.實(shí)例:

(1)用免交互的方式給用戶設(shè)置密碼。

[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)用傳參方式實(shí)現(xiàn)免交互登錄:

![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)用嵌入模式實(shí)現(xiàn)免交互:

[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 的密碼 。
新的 密碼:
無(wú)效的密碼: 密碼少于 8 個(gè)字符
重新輸入新的 密碼:
passwd:所有的身份驗(yàn)證令牌已經(jīng)成功更新。

(4)用ssh實(shí)現(xiàn)免交互:

[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訪問(wèn)被拒絕\n"}"No route to host" {send_user "主機(jī)名/IP地址有誤\n"}"yes/no" {send "yes\n";exp_continue}"password" {send "$password\n"}
}
interact

在這里插入圖片描述

5.擴(kuò)展:

(1)監(jiān)控腳本寫一個(gè)函數(shù)庫(kù),用定時(shí)任務(wù)調(diào)用,每月1號(hào)執(zhí)行:

[root@test1 opt]# vim hanshu.sh #創(chuàng)建函數(shù)庫(kù)
fx () {
df -h | awk -F "[ ,%]+" 'NR>1 {if($5>20){print $1"警告!"}}'
}
[root@test1 opt]# vim wang.sh #調(diào)用函數(shù)
. /opt/hanshu.sh
a=`fx`
echo $a
[root@test1 opt]# crontab -e#創(chuàng)建定時(shí)任務(wù)
0 0 1 * * /opt/wang.sh

在這里插入圖片描述

(2)在實(shí)現(xiàn)ssh免交互登錄的基礎(chǔ)上,使它在密碼出錯(cuò)的情況下,也可以免交互自動(dòng)完成:

[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訪問(wèn)被拒絕\n"exit}"No route to host" {send_user "主機(jī)名/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)免交互實(shí)現(xiàn)fdisk的磁盤分區(qū),格式化,掛載:

[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}"分區(qū)號(hào) (1-4,默認(rèn) 1):" {send "\n";exp_continue}"起始 扇區(qū) (2048-41943039,默認(rèn)為 2048):" {send "\n";exp_continue}"Last 扇區(qū)*" {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://aloenet.com.cn/news/47048.html

相關(guān)文章:

  • 郴州建網(wǎng)站百度熱搜seo
  • 哪里網(wǎng)站開(kāi)發(fā)好國(guó)產(chǎn)免費(fèi)crm系統(tǒng)有哪些在線
  • 騰訊云動(dòng)態(tài)加速WordPress網(wǎng)站頁(yè)面怎么優(yōu)化
  • 裝修設(shè)計(jì)網(wǎng)站哪個(gè)好前端性能優(yōu)化有哪些方法
  • 網(wǎng)站建設(shè)教程模板網(wǎng)站排名seo軟件
  • 仿 wordpress簡(jiǎn)述seo的應(yīng)用范圍
  • 電腦關(guān)鍵字被限制 購(gòu)物網(wǎng)站明星百度指數(shù)在線查詢
  • 動(dòng)漫主題WordPressseo服務(wù)運(yùn)用什么技術(shù)
  • 電子商務(wù)網(wǎng)站開(kāi)發(fā)實(shí)戰(zhàn)長(zhǎng)春seo排名扣費(fèi)
  • 網(wǎng)站目錄文件查看在線一鍵免費(fèi)生成網(wǎng)頁(yè)網(wǎng)站
  • 自己的電腦做網(wǎng)站服務(wù)器嗎北京網(wǎng)站建設(shè)制作開(kāi)發(fā)
  • 食品公司名字大全上海網(wǎng)站seo
  • vs做動(dòng)態(tài)網(wǎng)站登錄青島百度快速排名優(yōu)化
  • 西安做網(wǎng)站推廣營(yíng)銷型網(wǎng)站建設(shè)方案
  • 網(wǎng)站介紹詞百度一下瀏覽器
  • 成都網(wǎng)站建設(shè)費(fèi)用免費(fèi)的推廣引流軟件下載
  • 天貓網(wǎng)站設(shè)計(jì)小米口碑營(yíng)銷案例
  • 網(wǎng)站制作驗(yàn)收單大數(shù)據(jù)是干什么的
  • 廣州市建設(shè)企業(yè)網(wǎng)站平臺(tái)什么叫做網(wǎng)絡(luò)營(yíng)銷
  • 有什么網(wǎng)站可以做初中試題sem是什么崗位
  • 知名高端網(wǎng)站設(shè)計(jì)企業(yè)百度網(wǎng)站檢測(cè)
  • 卡盟網(wǎng)站怎么做圖片素材網(wǎng)站seo方法
  • 網(wǎng)站搜索怎么做常見(jiàn)的網(wǎng)絡(luò)營(yíng)銷推廣方式有哪些
  • 建程網(wǎng)app下載西安seo和網(wǎng)絡(luò)推廣
  • 便宜 虛擬主機(jī)sem 優(yōu)化軟件
  • 基金管理公司司網(wǎng)站建設(shè)要求國(guó)際新聞今天
  • wordpress扒站工具北京網(wǎng)站制作公司
  • 網(wǎng)站建設(shè)價(jià)錢差異外貿(mào)接單平臺(tái)哪個(gè)最好
  • 做網(wǎng)站如何導(dǎo)入信用卡付款一個(gè)產(chǎn)品的市場(chǎng)營(yíng)銷策劃方案
  • ??诰W(wǎng)站開(kāi)發(fā)公司電話建立一個(gè)網(wǎng)站的費(fèi)用