我目前正在为Centos 7服务器制作一些脚本,目的是简化服务器的安装过程。我写了这个简单的脚本,但是找不到文件或类似的东西。
#!/bin/bash
TIME=`date +%b-%d-%y` # This Command will add date in Backup File Name.
FILENAME=backup-$TIME.tar.gz # Here i define Backup file name format.
SRCDIR=/imp-data # Location of Important Data Directory (Source of backup).
DESDIR=/backups # Destination of backup file.
tar -cpzf $DESDIR/$FILENAME $SRCDIR
HOST=34.77.147.135 # 2
USER=backupuser # 3
PASSWORD=backup # 4
ftp -inv $HOST <<EOF # 5
user $USER $PASSWORD # 6
lcd /backups # 7
mput *.tar.gz # 8
bye # 9
EOF
#END
我希望文件上传到给定的FTP服务器。但是我得到了这个回应:
local: # remote: #
local: #: No such file or directory
local: 8 remote: 8
local: 8: No such file or directory
221 Goodbye
答案 0 :(得分:3)
ftp -inv $HOST <<EOF # 5
user $USER $PASSWORD # 6
lcd /backups # 7
mput *.tar.gz # 8
bye # 9
EOF
那些“注释”不是注释,它们是<<EOF
开头的here-document的一部分。例如,您正在执行命令
mput *.tar.gz # 8
失败,因为没有名为#
或8
的文件。