#!/bin/bash
#######################################################
$Name: shell_template.sh
$Version: v1.0
$Function: Introduce Function Template Script
$Author: Ropon
$organization: https://www.west.cn
$Create Date: 2016-1-20
$Description: You know what i mean,hehe
#######################################################
Shell Env
SHELL_NAME=”shell_template.sh”
SHELL_DIR=”/root”
SHELL_LOG=”${SHELL_DIR}/${SHELL_NAME}.log”
LOCK_FILE=”/tmp/${SHELL_NAME}.lock”
#Write Log
shell_log(){
LOG_INFO=$1
echo “$(date “+%Y-%m-%d”) $(date “+%H-%M-%S”) : ${SHELL_NAME} : ${LOG_INFO}” >> ${SHELL_LOG}
}
Shell Usage
shell_usage(){
echo $”Usage: $0 {backup}”
}
shell_lock(){
touch ${LOCK_FILE}
}
shell_unlock(){
rm -f ${LOCK_FILE}
}
Backup MySQL All Database with mysqldump or innobackupex
funcname(){
if [ -f “$LOCK_FILE” ];then
shell_log “${SHELL_NAME} is running”
echo “${SHELL_NAME}” is running && exit
fi
shell_log “mysql backup start”
shell_lock
sleep 10
shell_log “mysql backup stop”
shell_unlock
}
Main Function
main(){
case $1 in
backup)
funcname
;;
*)
shell_usage;
esac
}
#Exec
main $1