加在/etc/bashrc里
#只有"人"操作才用这个,后台登录进程继续用原生的rm
[[ $- != *i* ]] && return
if [ ! -f "/opt/.trushbin" ]; then
sudo mkdir -p "/opt/.trushbin"
#给垃圾桶设置特权位(1000)保持文件所有者
sudo chmod 1777 "/opt/.trushbin"
fi
export trushbin="/opt/.trushbin"
function put_into_trushbin()
{
if [ -z ${trushbin} ]; then
\rm $@
return
fi
filenames=()
for i in "$@";
do
#区分参数和文件名,指定了多个文件名时,逐个拷贝
if [[ ! "${i}" =~ ^-.* ]]; then
filenames[${#filenames}]=${i}
fi
done
srcdir=$(pwd)
dirname=${trushbin}/u_${USER}_f_${srcdir##*/}_@_$(date +%Y-%m-%d-%H-%M-%S.%N)
mkdir ${dirname}
for i in "${filenames[@]}";
do
mv -i "${i}" "${dirname}/"
done
}