一个脚本让你从此再也不怕删错文件
作者:互联网
前言
最近又有学员删文件时候不小心删除了,导致删除错误删除了文件,之前也有过误删数据库,误删根的。
我也是在带出了这么多学员之后才发现,真的有人会误删,还没做讲师之前我以为这只是个梗。
解决误删除文件,我们有很多措施,等你删除了在去恢复,这种就属于第三流的运维了,第二流的运维有备份,第一流的运维不但有备份还有防止误删除的机制。
今天我们就来写一个脚本,先解决删除文件没有提示的问题,然后解决删除前备份的问题
脚本源码
[root@ecs-c13b test]# cat rm.sh
#!/bin/bash
NAME=$1
now=`date +%Y%m%d%H%M`
read -p "你确定要删除当前的文件或者文件夹吗 yes|no:" inpt
read -p "请在确定一次 是否删除文件或者文件夹 yes|no:" input
if [ $input == "yes" ] ||[ $input == "y" ];then
mkdir -p /data/.$now
#### 判断rsync是否已经安装
RSYNC=`rpm -qa rsync |wc -l`
if [ $RSYNC -ne 0 ];then
echo "现在开始备份数据"
else
#### 如果没有rsync就先安装rsync并启动
yum install xinetd rsync -y
useradd -s /sbin/nologin -M rsync
mkdir -p /data
chown -R rsync.rsync /data/
echo "rsync_backup:123456" >/etc/rsync.password
chmod 600 /etc/rsync.password
fi
rsync --daemon
#### 判断要删除的文件是否存在
if [ -f $1 ] || [ -d $1 ];then
### 如果要删除的文件存在则开始备份
rsync -aR $1 /data/.$now/$1/
echo "数据备份成功"
else
echo "文件不存在,请重新确认文件名字"
exit 1
fi
echo "开始删除数据"
/bin/rm -rf $1
echo "文件删除成功,若需要恢复请到 /data/.$now/路径下恢复"
elif [ $input == "no" ] ||[ $input == "n" ]
then
exit 0
else
echo "请输入yes|no"
exit
fi
总结
在学习中,可以把所有你能想到的都写成脚本来不断练习,任何技术的学习都是在不断模仿,不断写的过程中,变大变强的。
本文转自 ID: 互联网老辛 更多内容关注公众号《极客运维之家》,扫码添加:
标签:脚本,文件,rsync,删除,echo,不怕,input,删错,data 来源: https://blog.csdn.net/qq_42499737/article/details/118544285