shell指令碼程式設計的靈活運用需要有對指令碼基礎,不同的語句組合應用具有十分熟悉的理解。接下來就通過一些實際專案來更加深刻的體會shell在生活中的應用。
需求分析:根據系統管理的需求,分析指令碼要實現的功能,功能實現的層次,實現的命令與語句等
命令測試:將要用到的命令逐個進行測試,以決定使用的選項,要設定的變數等
測試調優:對指令碼進行測試,並根據結果進行優化建議一邊程式設計一邊除錯,以減少錯誤的發生
#!/bin/bash
# 實現ssh的免密登入。
yum -y install expect
client1=$1
user=$2
passwd=$3
expect << -eof
spawn ssh-keygen -t rsa
expect
"overwrite"
"enter passphrase"
"same passphrase"
}spawn ssh-copy-id $@$
expect
"password"
}expect eof
-eof
number of key(s) added: 1
now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.
[root@server1 ~]# ssh [email protected]
last login: tue nov 17 20:02:33 2020 from 20.0.0.1
[root@server1 ~]# exit
登出connection to 20.0.0.13 closed.
dns_zones=/etc/named.rfc1912.zones
Shell指令碼實戰 DNS主從同步指令碼例項
ps 兩個伺服器起好後最好兩個服務都重啟一下 bin bash dns主從同步 主伺服器 rpm q bindif ne 0 then yum install bind y systemctl start named fi 判斷dns服務是否安裝 read p 網域名稱 請帶字尾 yu quanju...
shell指令碼實戰 while迴圈語句
上文我們討論了for迴圈的使用,在有限迴圈裡,我們使用for迴圈是很方便的一件事情,今天我們來 下while迴圈 while迴圈語句的語法分析 語法格式一 while 條件 do 操作 done 語法格式二 while read line do 操作 done file 通過read命令每次讀取一行...
開發shell指令碼檢查Nginx實戰分享
開發shell指令碼檢查nginx實戰分享 一 本指令碼實現功能 1 自動檢查nginx下面的 節點是否正常 2 通過頁面顯示狀態,有問題的節點給出頁面報警及聲音報警。3 增加新節點,頁面自動載入新節點,無需修改程式。二 守護檢查指令碼 root lb01 extra cd server scrip...