【shell案例】一个脚本让你从此再也不怕删错文件

举报
互联网老辛 发表于 2021/06/08 23:15:58 2021/06/08
【摘要】 前言 最近又有学员删文件时候不小心删除了,导致删除错误删除了文件,之前也有过误删数据库,误删根的。 我也是在带出了这么多学员之后才发现,真的有人会误删,还没做讲师之前我以为这只是个梗。 解决误删除文件,我们有很多措施,等你删除了在去恢复,这种就属于第三流的运维了,第二流的运维有备份,第一流的运维不但有备份还有防止误删除的机制。 今天我们就来写一个脚本,先解决删除...

前言

最近又有学员删文件时候不小心删除了,导致删除错误删除了文件,之前也有过误删数据库,误删根的。

我也是在带出了这么多学员之后才发现,真的有人会误删,还没做讲师之前我以为这只是个梗。

解决误删除文件,我们有很多措施,等你删除了在去恢复,这种就属于第三流的运维了,第二流的运维有备份,第一流的运维不但有备份还有防止误删除的机制。

今天我们就来写一个脚本,先解决删除文件没有提示的问题,然后解决删除前备份的问题

脚本源码

[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


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46

总结

在学习中,可以把所有你能想到的都写成脚本来不断练习,任何技术的学习都是在不断模仿,不断写的过程中,变大变强的。

文章来源: zmedu.blog.csdn.net,作者:互联网老辛,版权归原作者所有,如需转载,请联系作者。

原文链接:zmedu.blog.csdn.net/article/details/108228834

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。