1. 程式人生 > 實用技巧 >Shell簡單指令碼

Shell簡單指令碼

1. 簡單指令碼(讓我們瞭解編寫指令碼的基本步驟)

1.1 目的: 實現程式碼倉庫主機操作命令功能

1.2 建立指令碼步驟

① 建立目錄

mkdir /data/scripts
cd /data/scripts

②指令碼示例

#! /bin/bash
# 功能:打包程式碼
# 指令碼名:tar_code.sh
# 作者:yqyn
# 版本:V0.1
# 聯絡方式:手機號cd /data/codes/meiduo/
git pull
cd /data/codes
tar -zcf meiduo_mall.tar.gz meiduo/

進行測試

/bin/bash /data/scripts/tar_code.sh
# 檢視壓縮檔案內容
ll 
/data/codes/meiduo_mall.tar.gz

1.3 固定變數:問題:腳本里面的手寫的固定的內容太多了,更改時候費勁

#! /bin/bash
# 功能:打包程式碼
# 指令碼名:tar_code.sh
# 作者:yqyn
# 版本:V0.2
# 聯絡方式:手機號
FILE='meiduo_mall.tar.gz'
CODE_DIR='/data/codes'
CODE_PRO='meiduo'

cd "${CODE_DIR}"/"${CODE_PRO}"
git pull
cd "${CODE_DIR}"
tar -zcf "${FILE}" "${CODE_PRO}"

1.4 功能函式

需求:三條命令其實是一個組合,實現的是一個功能

#! /bin/bash
# 功能:打包程式碼
# 指令碼名:tar_code.sh
# 作者:yqyn
# 版本:V0.3
# 聯絡方式:手機號
FILE='meiduo_mall.tar.gz'
CODE_DIR='/data/codes'
CODE_PRO='meiduo'

getcode() {
    cd "${CODE_DIR}"/"${CODE_PRO}"/
    git pull
}

tarcode() {
    cd "${CODE_DIR}"
    tar -zcf "${FILE}" "${CODE_PRO}"/
}

# 函式呼叫
getcode
tarcode

1.5 遠端執行(以下在另一臺主機上執行)

格式:

ssh 遠端主機登入使用者名稱@遠端主機ip地址 "執行命令"
示例:
ssh root@192.168.19.131 "ifconfig"

遠端執行上面的指令碼

ssh [email protected] "/bin/bash /data/scripts/tar_code.sh"

遠端檢查更新效果:

ssh [email protected] "ls -l /data/codes/meiduo_mall.tar.gz"