背景
之前接到个作业,实现一个自定义删除脚本
假设有文件夹 dir1, dir2;文件 file1,file2
执行方法 bash myrm.sh dir1 dir2 file1 file2
执行结果 在当前目录下创建隐藏文件夹(文件名为当前时间),将文件和文件夹移入此文件夹中
执行结果
执行删除命令
查看删除结果,在当前路径按照时间新建了一个隐藏文件夹,将删除的内容移动到其中
代码
#!/bin/sh
# @author zhaoxf
if test $# -eq 0
then
echo "rm命令至少需要一个参数-文件名或文件夹名!"
else
#创建回收站
fileName=.$(date +%Y%m%d%H%M)
if [ ! -d ${fileName} ]
then
mkdir ./${fileName}
#echo "回收站名字${fileName}."
fi
#循环删除
while [ $# != 0 ]
do
mv $1 ./${fileName}/
if [ $? != 0 ]
then
echo "$1删除失败!"
echo "原因:"
echo " 1.请确保文件存在!"
echo " 2.权限问题!"
exit 1
fi
echo "$1已放入回收站!"
shift
done
fi