如何解决在编写 BASH 脚本时使用 scp:“没有这样的文件或目录”
我编写了一个脚本,可以压缩一个文件夹,然后将其存储在另一个文件夹中。到目前为止,这工作得很好。但现在我想使用 scp 发送它。我想使用 eval 以便我可以轻松更改它们。但是当我使用它将文件发送到某个目的地时,它总是告诉我该目录或文件不存在。如果我在没有 $scriptd 的情况下这样做,那么它就像一个魅力。
知道为什么吗?
#!/bin/bash
# Implementation of variables
today=$(date +"%Y-%m-%d")
source="~/Documents"; eval source=$source
target="~/Backups"; eval target=$target
scriptd="~/Documents/Backups"; eval scriptd=$scriptd
main(){
backup
}
backup(){
tar -zvcf $today.tar.gz -P $source
rsync -zhap --progress $scriptd/$today.tar.gz $target
rm $scriptd/$today.tar.gz
scp $target/$today.tar.gz pi@I-Am-An-IP:$scriptd
}
main
exit 0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。