【问题标题】:Linux script cp changing file nameLinux脚本cp更改文件名
【发布时间】:2012-11-14 14:03:39
【问题描述】:
我正在尝试制作一种回收箱。我有一个删除功能,它将选定的文件发送到回收站,并将存储它的目录的位置添加到文件中。问题是当我使用 tail 从脚本中获取位置时。尽管该脚本有效,但它会将文件重命名为 tail。谁能解释为什么cp要重命名文件?这是我认为问题所在的 sn-p:
destination=(tail $1 -n 1)
cp ~/Recycling/$1 $destination
rm ~/Recycling/$1
谢谢
【问题讨论】:
标签:
linux
bash
cp
bin
recycle
【解决方案1】:
你会想要的
$(tail $1 -n 1)
或
`tail $1 -n 1`
【解决方案2】:
您在括号前缺少$:
destination=$(tail $1 -n 1)
【解决方案3】:
括号前需要$:
destination=$(tail $1 -n 1)
cp ~/Recycling/$1 $destination
rm ~/Recycling/$1
sed -i '$d' $destination # this removes the last line from the file