我正在构建 FTP bash 脚本来生成一个 .csv 文件并从 Linux 机器传输到另一台服务器,但我遇到了问题,因为它会出现错误并且文件没有在第二台服务器上传输。可能是什么问题?
这是错误:
TEST: A file or directory in the path name does not exist.
Filename invalid
如果我把/放在 TEST 之前也没关系,它会触发同样的问题。
这是我的脚本
HOST='ipadress'
USER='user'
PASSWD=''
TARGET='TEST'
#Paramenters
set -x
DATE=`date +%Y%m%d%H%M`
SQL=/home/sql_statement.sql
QUERYCMD=/home/report.sh
CSV=/home/csv/test_$DATE.csv
#Interogate the sql and put in the folder
$QUERYCMD ${SQL} ${CSV}
#Send the .csv file in the target folder
cd /home/csv
ftp -n $HOST <<EOF
quote USER $USER
quote PASS $PASSWD
lcd $TARGET
put $CSV $TARGET
quit
EOF
exit 0
符号 TARGET 是否是指远程主机上的目录?
ftp
命令lcd
在本地(客户端(端更改目录,而cd
在远程(服务器(端更改目录;同样对于远程端,通常有一个指定的ftp root
目录,调整与该起点相关的任何路径;要确认目录内容,您可以在PASS
行之后添加ftp
命令ls
和!ls
的单独行上