我不想使用“RM”命令。我想要一个自定义命令,将文件移动到“垃圾”文件夹及其所在目录。例如。
如果使用命令处理文件时文件为 /home/test/folder1/xx/file.so,它将移动到 /trash/home/test/folder1/xx/file.so,这样我就不会与垃圾箱中已有的同名文件发生冲突。
有人知道如何实现这一点,并允许它以递归方式使用,以便目录也可以被丢弃吗?
答案1
看一下垃圾处理。它提供了与 KDE、GNOME 和 XFCE 使用的相同“垃圾桶”的命令行界面。
答案2
我用:
function trash () { # safe rm to trash
local path
for path in "$@"; do
# ignore any arguments
if [[ "$path" = -* ]]; then :
else
local dst=${path##*/}
# append the time if necessary
while [ -e ~/.Trash/"$dst" ]; do
dst="$dst "$(date +%H-%M-%S)
done
mv "$path" ~/.Trash/"$dst"
fi
done
}
安全又简单。