#!/bin/bash
action() # 定義函式,進行操作指南
action $1
database=`mysql -uroot -p$1 -en -e
"show databases;"|grep -e "^\*|schema$" -v `
mkdir -p /mnt/sqldump/
[ -e
"$database_name".sql ]&& case $1
case() # 定義函式,匹配操作
backup.sql
done
echo backup
;;o) # o 時覆蓋原備份
for database_name in
$database
do mysqldump -uroot -p$1
$database_name > /mnt/sqldump /$.sql
[ "$?"
-eq"0" ]&&
done
echo overwrite
;;exit)
exit
0 ;;
*) # 如果錯誤,提示正確輸入
echo
"error:please inout [s] [b] [o] or exit!!"
action $1
case $1
esac
} case $1
執行如下:
# 設定時間,不退出
set"ip" [ lindex $argv
0 ] # 第乙個引數為 ip
set"pass" [ lindex $argv
1 ] # 第二個引數為 pass
spawn ssh root@$ip
# 執行 ssh 命令
expect
"password"
} interact # 登入後可執行操作
執行如下:
指令碼內容:
執行結果:
auto_check() # 定義函式,進行自動連線主機
"password"
} expect eof
eof} for ip in # 定義訪問主機號,並將資訊儲存
do ping -c1 -w1 172.25.151.$ip &> /dev/null &&
echo
172.25.151.$ip
$host_name >> /mnt/ip.host.list
done
指令碼內容:
執行如下:
# 安裝 httpd 服務
yum install mariadb-server -y &>/dev/null && echo -e "\033[31mmariadb is installed\033[0m";
# 安裝 mariadb 服務
# 啟動 httpd 服務
# 修改 httpd 服務埠
systemctl start mariadb &>/dev/null && echo -e "\033[31mmariadb is starting\033[0m";
# 啟動 mariadb 服務
# 讓防火牆允許 httpd 服務
#進行論壇搭建
cp /root/desktop/discuz_x3.2_sc_utf8.zip /var/www/html/;
cd /var/www/html/;
/usr/bin/expect <10
spawn unzip discuz_x3.2_sc_utf8.zip
expect
} eof
chmod 777 /var/www/html -r;
firefox $1/upload;
執行如下:
shell指令碼例項
1.批量建立10個系統賬號test01 test10,並隨機設定8位數密碼 bin bash for i in seq w 10 do useradd test i echo random madsum cut c 8 tee a passwd.txt stdin test i done 2.在目錄...
Shell指令碼例項
1.寫乙個指令碼,利用迴圈計算10的階乘 bin sh factorial 1 for a in seq 1 10 dofactorial expr factorial a done echo 10 factorial 注 上面有一行,for a in seq 1 10 其中seq 1 10 即列出...
Shell 指令碼例項
1 使用for迴圈在 www目錄下批量建立10個html 檔案,名稱為隨機小寫10個字母加日期 bin bash if d opt www then mkdir p opt www ficd opt www for i in seq 10 do random echo random md5sum c...