Ahoj, Dňa Sun, 08 Jun 2014 09:03:48 +0100 Sharon Kimble <boudiccas@skimble.plus.com> napísal: > Revisiting a question that I asked in March last year about how to > auto-empty a trash bin. > I am created this for cca 2 years (sorry, comments in my language). It takes mount points for block devices, check the Trash-* dirs and then uses autotrash to take action: #!/bin/bash # # empty_trash.sh # # Copyright 2012 Slavko <linux@slavino.sk> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. usage() { # malý pomocník echo -e "Použitie:" echo -e "\t$(basename $0) [ -hrs ] [ -d dni ]" echo -e "******************************************" echo -e echo -e "\t-r\t- reálne vyprázdnenie koša" echo -e "\t-s\t- reálne vyprázdnenie koša so zobrazením štatistiky" echo -e "\t-d dni\t- vymazať súbory staršie ako počet dní [predvoelne 10]" echo -e "\t-h\t- vypíše tohoto pomocníka a skončí" } STARE=10 PARAMS="--dry-run --stat" VERBOSE="yes" # spracovanie parametrov vstupu while getopts hrsd: OPT; do case $OPT in h) # pomocník usage exit 0 ;; r) # realne vykonanie PARAMS="" VERBOSE="no" ;; s) # realne vykonanie so štatistikami PARAMS="--stat" VERBOSE="yes" ;; d) # počet dní veku položky na vymazanie STARE=$OPTARG [ $STARE -lt 1 ] && STARE=1 ;; \?) # neznámy parameter usage exit 1 ;; esac done shift $(expr $OPTIND - 1) # hlavný kôš používateľa (XDG) if [ -z "$XDG_DATA_HOME" ]; then BASE_TRASH=$HOME/.local/share else BASE_TRASH=$XDG_DATA_HOME fi BASE_TRASH=$BASE_TRASH/Trash if [ -d $BASE_TRASH/info ]; then [ "$VERBOSE" != "no" ] && echo $BASE_TRASH: autotrash --days $STARE --trash-path $BASE_TRASH $PARAMS fi # pre každý prípojný bod, ktorý je blokové zariadenie for MOUNTPOINT in $(mount | egrep "^/dev" | awk '{print $1 "@" $3}'); do DEVIC=${MOUNTPOINT/@*} CESTA=${MOUNTPOINT#*@} TRASH=${CESTA}/.Trash-${UID} if [ -d ${TRASH}/info ]; then [ "$VERBOSE" != "no" ] && echo [ "$VERBOSE" != "no" ] && echo "$TRASH" autotrash --days $STARE --trash-path $TRASH $PARAMS fi done regards -- Slavko http://slavino.sk
Attachment:
signature.asc
Description: PGP signature