首页 > 代码库 > 为新手linuxer准备的小脚本(防止不小心误删根)

为新手linuxer准备的小脚本(防止不小心误删根)

最近经常有些新同学不小心把根目录删了,所以为了防止这种情况我给你们写了一个小脚本。

由于学习的需要,有些同学确实需要使用root用户,由于root用户的权限过大,偶尔的小失误可能造成很大的损失,这里便为你们准备了一个脚本。

当然,平时如果不需要root权限的朋友,为了安全着想,请尽量使用普通用户。

[root@helloween scripts]# cat rm.sh

#====================================
# File Name: rm.sh
# Author: Helloween
# mail: 
1289537727@qq.com
# Created Time: 2014年05月08日 星期四 02时28分22秒
#====================================
#!/bin/bash
#Functions: for cant remove the / directory!

#For order:rm -rf /*
function remove1
{
 Nrm_dirs="(/boot)|(/etc)|(/root)|(/proc)|(/dev)|(/usr)|(/sys)|(/bin)|(/sbin)|(/var)|(/home)|(/selinux)|(/lib)";
 ret=`echo "$*" | grep -E "${Nrm_dirs}"`;
 test -n "${ret}" && echo "Warning:cant remove these system directorys!!!" && exit 0;
}

#For order:rm -rf /
remove2()
{
 for i in $@
 do
  if [ "$i" = / ];then
   echo "Warning:cant remove the / directory!!!";
   exit 0;
  fi
 done

 


}

#For order:else case
remove3()
{
 /bin/rm -i $*
}

#main function
Main()
{
 remove1 $@;
 remove2 $@;
 remove3 $@;
}

Main $@;

这个脚本只是实现了防止删根或者一些系统必要目录,要想使用rm命令时调用的是这个脚本,可以将此脚本放入/usr/local/bin目录下,执行alias rm=‘rm.sh’可以实现rm命令的替换,以后使用rm命令时调用的就是这个脚本了。

然后执行echo "alias rm=‘rm.sh‘" >>~/.bashrc

这样下次打开终端时,rm命令替换的作用就会永久生效。

当然,以上操作都是在root用户下所做

送给需要的朋友,如有错误之处,敬请指正。

 

本文出自 “Helloween” 博客,请务必保留此出处http://6368580.blog.51cto.com/6358580/1408647