该脚本将要删除的文件的路径作为输入,并且不仅将文件移至垃圾箱,还移至整个文件夹树。
作为输入,文件的绝对路径应该不是问题。 如果它作为输入给出了文件的相对路径,我如何获得移动到垃圾箱的绝对路径?
这是一个执行的肮脏例子:
写下要删除的文件路径---> / home / user / mydata / song.mp3(绝对路径) 在垃圾箱中将获得:.Trash / home / user / mydata / song.mp3
写下要删除的文件路径---> mydata / song.mp3(相对路径) 在垃圾箱中将获得:.Trash / home / user / mydata / song.mp3
答案 0 :(得分:2)
#!/usr/bin/bash
delete_dir=$(readlink -f $1)
答案 1 :(得分:0)
#!/usr/bin/bash
read path
if [[ "$path" =~ ^/home/user ]] ; then
echo mv $path Trash$path
else
echo mv /home/user/$path Trash/home/user/$path
fi