集中化管理crontab
2016-06-29 20:58
309 查看
#!/bin/bash ######################################################################### # File Name : rsync_nobody.sh # Author : gongy # Mail : 458026734@qq.com # Created time : 2016-06-29 09:58:53 # Last modified : 2016-06-29 09:58:53 # Description : rsync nobodyfile to remote machine. ######################################################################### #Loading system function library. source /etc/init.d/functions set -e #defined variable. DATE=`date +%Y%m%d` TIME=`date '+%F %H:%M:%S'` MYSQL_USER="" MYSQL_PASSWD="" MYSQL_ADDRESS="" EXEC_LOG="/app/control_crontab/log/exec_$DATE.log" DATA_LOG="/app/control_crontab/log/${IP}_data_$DATE.log" SOURCE_FILE="/app/control_crontab/cron/nobody/" DIST_FILE="/var/spool/cron" #get ip list. ip=( `mysql -uroot -e "use db_devops;select IP from tbl_all_ip"|sed '1d'` ) function judge(){ if [ $? -eq 0 ];then action "$TIME-${ip[$i]}-rsync nobody file" /bin/true else action "$TIME-${ip[$i]}-rsync nobody file" /bin/false #MSG="${ip[$i]}更新nobody失败" #curl "http://alarm.51.com/alarm/index.php?type=1&gid=99&msg=${MSG}" &>/dev/null fi } function rsync_all(){ #rsync all nobody file. for ((i=0;i<${#ip[*]};i++)) do #rsync同步nobody到RMOTE主机,更新文件. rsync -az ${SOURCE_FILE}/nobody-${ip[$i]} ${ip[$i]}:${DIST_FILE}/nobody &> /dev/null judge done } #echo "===========================================================================" >> ${EXEC_LOG} function rsync_more(){ #IP=`cat ip_file` for IP in `cat ip_file` do rsync -az ${SOURCE_FILE}/nobody-$IP $IP:${DIST_FILE}/nobody &> /dev/null result done } function result(){ if [ $? == 0 ];then echo "$TIME-$IP-rsync nobody file....................................................[OK]" else echo "$TIME-$IP-rsync nobody file....................................................[FAILED]" fi sleep 1 } read -p "Please enter your chose all/one:" input case $input in "all") rsync_all ;; "one") read -p "Please enter the file:" ip_file rsync_more ;; *) exit ;; esac
相关文章推荐
- android wifi 无线调试
- 运维入门
- 动态清空 nohup 输出文件
- install scrapy with pip and easy_install
- 使用 rsync 复制大文件的一些误解
- CentOS下使用yum命令安装计划任务程序crontab
- Linux Shell常用技巧
- Shell 脚本编程陷阱
- 如何在使用 scp 命令时递归地排除文件
- shell字符串操作详解
- Shell中删除某些文件外所有文件的3个方法
- Ruby中执行Linux shell命令的六种方法详解
- VB使用shell函数打开外部exe程序的实现方法
- Shell编程的一些知识集合
- Shell中的for和while循环详细总结
- 什么是Shell?Shell脚本基础知识详细介绍
- Shell脚本中引用、调用另一个脚本文件的2种方法
- Shell脚本解压rpm软件包
- Linux Shell 数组建立及使用技巧
- Shell脚本实现复制文件到多台服务器的代码分享