前提,用户目录存在 .Trash 目录
简单说明:
在用户目录中的 .Trash 目录中创建 rm 目录,
把删除的文件打包成zip压缩包到rm目录中的对应目录,并删除源文件
#!/bin/bash
userpath=~
cur_path=`pwd`
paths=(${cur_path//\// })
trashpath=$userpath"/.Trash/rm"
if [ ! -d $trashpath ]; then
mkdir $trashpath
fi
for var in ${paths[@]}
do
trashpath=$trashpath"/"$var
if [ ! -d $trashpath ]; then
mkdir $trashpath
fi
done
cur_date="`date +%Y%m%d.%H%m%s`"
zipfile=$trashpath"/rm.bak."$cur_date".zip"
files=""
for key in "$@"
do
if [[ "$key" =~ ^\-[a-zA-Z]*$ ]]; then
else
files=$files" "$key
fi
done
zip -mr $zipfile $files