LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 613|回复: 1

删除到“垃圾筒”的del脚本

[复制链接]
发表于 2003-10-16 00:59:38 | 显示全部楼层 |阅读模式
发信人: alphatan ([`a:lfa:ta2n]), 信区: LinuxApp
标  题: 删除到“垃圾筒”的del脚本
发信站: BBS 水木清华站 (Thu Oct 16 00:43:31 2003), 转信

把脚本保存为del(无后缀名),然后扔到/usr/local/bin就可以了。
这里设的垃圾筒大小限制为500M,想大一点的就把里面的501改为1025吧。
如果超过上限就会询问用户是否清除(本来想给个选项为默认清除,
但想着要用到这个脚本的都是些不用想就删东西的人,所以没加这个选项了)
记得定时清垃圾筒哦。

  1. #!/bin/bash

  2. if [ ! -e ${HOME}/.Trash ]; then
  3.   mkdir ${HOME}/.Trash
  4. fi

  5. trashVolumn=$(du -sm ${HOME}/.Trash |awk '{print $1}')
  6. sourceFiles=$@

  7. if [ $trashVolumn -ge 501 ]; then
  8.   read -p "ERROR!!! Your Trash is out of 500M!! Clean ALL?(yes, or else)" cleanResponse
  9.   cleanResponse=$(echo $cleanResponse |tr [A-Z] [a-z])
  10.   if [ "$cleanResponse" = 'yes' ] ; then
  11.     if cleanTrash ; then
  12.       mv --target-directory=${HOME}/.Trash $sourceFiles
  13.     fi
  14.   else
  15.     echo -e "I had NOT done ANY cleaning, Your Trash is still FULL!!" >&2
  16.   fi
  17. else
  18.   mv --target-directory=${HOME}/.Trash $sourceFiles
  19. fi

  20. function cleanTrash()
  21. {
  22.   if rm -rf ${HOME}/.Trash/* ; then
  23.     return 0
  24.   else
  25.     echo -e "CLeaning course FAILED!\n" >&2
  26.     return 1
  27.   fi
  28. }
复制代码

--
Learning is to improve, but not to prove.


※ 来源:·BBS 水木清华站 smth.org·[FROM: 218.19.43.161]
 楼主| 发表于 2003-10-16 01:08:27 | 显示全部楼层
虽然只是个很小的脚本,但就是多人问少人写。
这里先放一个,给用惯垃圾筒的多个选择。
不知道前面有没有人写过,用论坛的“搜索”搜了一下,用什么关键字都出来一大堆,最前的几个没看到有,就发布了,如果前面有的话版主要删掉也不用通知我了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表