Linux脚本cp改变文件名

标签 linux bash cp bin recycle

我正在尝试制作一种回收箱。我有一个删除功能,它将选定的文件发送到回收站,并将其存储的目录位置添加到文件中。问题是当我使用 tail 从脚本中获取位置时。尽管该脚本有效,但它会将文件重命名为 tail。谁能解释为什么 cp 重命名文件?这是我认为问题所在的片段:

destination=(tail $1 -n 1)
cp ~/Recycling/$1 $destination 
rm ~/Recycling/$1

谢谢

最佳答案

括号前需要有一个$:

destination=$(tail $1 -n 1)
cp ~/Recycling/$1 $destination 
rm ~/Recycling/$1
sed -i '$d' $destination # this removes the last line from the file

关于Linux脚本cp改变文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13575963/

相关文章:

c - 信号在 Linux 上如何工作(c)?

linux - vimrc导入文件

string - 使用 awk 提取和拆分

linux - 在Linux中复制目录最快的方法是什么?

linux - 在 vim 中将垂直文本转换为水平文本

Linux - Bash - 在许多用户目录中应用 chown

bash - 如何在 bash 脚本中处理文件名中的空格?

linux - 如何连接两个字符串以构建完整路径

linux - 通过shell将不同文件夹中的文件复制到各自的文件夹中

linux - 如何复制文件并授予目标目录的权限