shell习题第7题:备份数据库】的更多相关文章

[题目要求] 设计一个shell脚本用来备份数据库,首先在本地服务器上保存一份数据,然后再远程拷贝一份,本地保存一周的数据,远程保存一个月 假设我们知道mysql root账号的密码,要备份的库为data123,本地备份目录为/bak/mysql,远程服务器ip为192.168.1.100,远程提供了一个rsync同步服务 [核心要点] 备份数据库的命令 同步到远程服务器的命令 本地一周,可以用 date +%w做后缀,远程一个月可以用date +%d作为后缀 [脚本] #!/bin/bash…
测试服务器上才用定时脚本备份一个数据库 并打包压缩成tar避免文件过大 脚本如下: 测试服务器的shell backup_mysql.sh #!/bin/bash BASE_PATH=/alidata/backup_sql/ LOG_NAME=$(date +%Y%m%d-%H%M%S).sql /alidata/server/mysql-/bin/mysqldump -ulizhaoyao -plizhaoyao onethink > $BASE_PATH$LOG_NAME /bin/tar…
[题目要求] 用shell打印下面这句话中字母数小于6的单词. Bash also interprets a number of multi-character options. [核心要点] for循环遍历所有单词 wc -L获取字符串长度 [脚本] #!/bin/bash c="Bash also interprets a number of multi-character options." n=`echo $c|awk -F '[ +-.]' '{print NF}'` ;i&…
[题目要求] 找到123/目录下所有后缀名为.txt的文件 1. 批量修改.txt为.txt.bak 2. 把所有.bak文件打包压缩为123.tar.gz 3. 批量还原文件的名字,即把增加的.bak再删除 [核心要点] find 用来查找所有的.txt文件 tar 打包一堆文件 还原文件名用for循环 [脚本] #!/bin/bash / -type f -name "*.txt" > /tmp/txt.list for f in `cat /tmp/txt.list` do…
[题目要求] 写一个支持选项的增加或删除用户的shell脚本 #!/bin/bash ]; then echo "Wrong, use bash $0 --add username, or bash $0 --del username or bash $0 -- help" exit fi exist_user() { >/dev/null >/dev/null then echo $i not exist fi } in --add) ]; then echo "…
[题目要求] 有一台服务器作为web应用,有一个目录(/data/web/attachment)不定时会被用户上传新的文件,但是不知道什么时候会被上传.所以,需要我们每5分钟做一次检测是否有新文件生成.请写一个shell脚本去完成检测.检测完成后若是有新文件,还需要将新文件的列表输出到一个按年.月.日.时.分为名字的日志里 [核心要点] find -mmin -5 date +%Y%m%d%H%M [脚本] #!/bin/bash basedir=/data/web/attachment t=`…
[题目要求] 写一个shell脚本,检测所有磁盘分区使用率和inode使用率并记录到以当天日期命名的日志文件里,当发现某个分区容量或者inode使用量大于85%时候,发邮件提醒 [核心要点] df df -i date +%F [脚本] #!/bin/bash dir=/tmp/disk d=`date +%F` [ -d $dir ] || mkdir $dir df >> $dir/$d.log df -i >> $dir/$d.log df | sed '1d' | awk…
[题目要求] 写个shell,看看你的Linux系统中是否有自定义的用户(普通用户),如有有的话统计个数 [核心要点] CentOS6,uid>=500 CentOS7,uid>=1000 [脚本] #!/bin/bash v=`cat /etc/redhat-release | awk -F'release' '{print $2}' | cut -d'.' -f1 | awk -F' ' '{pr }'` user() { -eq ]; then echo "no users&q…
[题目要求] 请仔细查看如下几个数字的规律,并使用shell脚本输出后面的十个数字 10 31 53 77 105 141... ... [核心要点] 计算两个数值之间的差值 [脚本] #!/bin/bash x= y= ` do echo $x x=$[$y+$y] z=$[**$i] y=$[$y+$z] done…
[题目要求] 用shell脚本实现如下需求 添加user_00 -- user_09 10个用户,并且给他们设置一个随机密码,密码要求10位包含大小写字母及数字,注意要把每个用户的密码记录到一个日志文件里 提示: 1. 随机密码使用命令 mkpasswd 2. 在脚本中给用户设置密码, 可以使用echo, 然后管道passwd命令 [核心要点] seq实现数字递增 mkpasswd产生随机字符 [脚本] #!/bin/bash ` do useradd user_$i -s ` echo "us…