Bash:从作为输入给出的相对路径中获取绝对路径



该脚本将要删除的文件路径作为输入,并不仅将文件移至废纸篓,还将整个文件夹树移至废纸篓。

将文件的绝对路径作为输入应该不是问题。

如果将文件的相对路径作为输入,我如何获取要移动到垃圾箱的绝对路径?

下面是一个肮脏的执行示例:

写入要删除的文件路径---> /home/user/mydata/song.mp3(绝对路径)在垃圾桶里会得到:.Trash/home/user/mydata/song.mp3

写入要删除的文件路径---> mydata/song.mp3(相对路径)在垃圾桶里会得到:.Trash/home/user/mydata/song.mp3

#!/usr/bin/bash
delete_dir=$(readlink -f $1)
#!/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

相关内容

  • 没有找到相关文章

最新更新