我正在使用此脚本定期将postgresql的旧私有实例备份到gmail:
#!/bin/bash
/opt/local/lib/postgresql83/bin/pg_dump maxgests -U postgres | gzip --best -c > $1 && (/opt/local/bin/mutt -s `date "+%d-%m-%Y-%H:%M"` -a $1 $2 < /dev/null)
最近我得到了这个:
./postgres_to_gmail.sh: line 2: $1: ambiguous redirect
脚本不再有效。 Mac OS X 10.6.8。
任何人都能说出错误以及如何解决问题吗?
第一个参数是路径,如/tmp/database.gz
第二个论点是电子邮件。
答案 0 :(得分:9)
$1
显然是空的。
作为一般指导,您应该将变量插值放在双引号中,几乎总是如此。
答案 1 :(得分:1)
调用者不设置参数($ 1 $ 2) 你应该定期查看crontab或程序调用 更
$ echo > $1
bash: $1: ambiguous redirect