From 1feb678fc3d52a7a3c4e31bb153783852fa08a58 Mon Sep 17 00:00:00 2001 From: filip <“filip.rabiega@gmail.com”> Date: Thu, 3 Jul 2025 21:27:06 +0200 Subject: added new stuff --- saferm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 saferm (limited to 'saferm') diff --git a/saferm b/saferm new file mode 100755 index 0000000..9a455fa --- /dev/null +++ b/saferm @@ -0,0 +1,39 @@ +#!/bin/sh + +archive="$HOME/.deleted" +realrm="$(which rm)" +copy="$(which cp) -R" + +if [ $# -eq 0 ]; then + exec $realrm +fi + +flags="" + +while getopts "dfiPRrvW" opt +do + case $opt in + f ) exec $realrm "$@" ;; + * ) flags="$flags -$opt" ;; + esac +done +shift $(( $OPTIND - 1 )) + +if [ ! -d $archive ]; then + if [ ! -w $HOME ]; then + echo "$0 failed: can't create $archive in $HOME" >&2 + exit 1 + fi + mkdir $archive + chmod 700 $archive +fi + +for arg +do + newname="$archive/$(date "+%S.%M.%H.%d.%m").$(basename "$arg")" + if [ -f "$arg" -o -d "$arg" ]; then + $copy "$arg" "$newname" + fi +done + +exec $realrm $flags "$@" -- cgit v1.2.3