Comment 6 for bug 228369

Revision history for this message
Ritesh Raj Sarraf (rrs) wrote :

rrs@learner:~$ cat .kde/shutdown/TrashReaper
#!/bin/bash

#Removes old files from the KDE trash folder (KDE >= 3.4)
#(c) 2005 Bram Schoenmakers

# http://bram85.blogspot.com/2005/11/only-good-for-trash-bin.html

EXPIREDATE=`date -d'30 days ago' +%Y%m%d`
TRASHDIR=~/.local/share/Trash

cd $TRASHDIR/info

for ITEM in *.trashinfo; do
  ITEMNAME=`echo "$ITEM" | sed -e 's/.trashinfo//'`

  #extract date
  TRASHDATE=`grep DeletionDate "$ITEM" | sed -e 's/^.*\(....\)-\(..\)-\(..\)T.*$/\1\2\3/'`

  if [ $TRASHDATE -le $EXPIREDATE ]; then
    rm -rf "$TRASHDIR/files/$ITEMNAME"
    rm -f "$TRASHDIR/info/$ITEM"
    #echo "$TRASHDIR/files/$ITEMNAME"
    #echo "$TRASHDIR/info/$ITEM"
  fi
done
rrs@learner:~$ crontab -l
# m h dom mon dow command
@daily ~/.kde/shutdown/TrashReaper

With this script in ~/.kde/shutdown and a cronjob to run daily, Trash auto-delete can be accomplished.