scp文件名中的变量不起作用?

时间:2011-12-12 20:51:20

标签: bash scp

我正在尝试每晚将备份tgz文件从一台服务器scp到另一台服务器。备份脚本使用以下$ date var就好了,但是当我为scp略微修改它时它会中断:

#!/bin/sh
date=`date +%Y-%m-%d`
rbfile=`/backups/$date_00h00.tgz`
scp $rbfile user@myserverip:

但脚本因错误而死:

/backups/.tgz: No such file or directory

另外,我应该切换到rsync以获得更好的远程备份 - tgz文件现在为3.5GB。任何推荐的教程?

1 个答案:

答案 0 :(得分:4)

使用$date_00h00时,告诉bash使用名为date_00h00的变量,因为字母,数字和_字符是允许的变量名称。

将变量名称括在{}中,它将解决问题:

rbfile=`/backups/${date}_00h00.tgz`