Shell模板
#!/bin/bash ####################################################### # $Name: shell_template.sh # $Version: v1.0 # $Function: Introduce Function Template Script # $Author: Zhurui # $organization: https://hacker.cnblog.com # $Create Date: 2016-11-1 # $Description: You know what i mean,hehe ####################################################### # Shell Env SHELL_NAME="shell_template.sh" SHELL_DIR="/opt/shell" 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