Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 脚本在以下情况下失败;mv";用“棍棒”打;ftp“;_Shell_Unix_Ftp_Mv - Fatal编程技术网

Shell 脚本在以下情况下失败;mv";用“棍棒”打;ftp“;

Shell 脚本在以下情况下失败;mv";用“棍棒”打;ftp“;,shell,unix,ftp,mv,Shell,Unix,Ftp,Mv,我尝试在脚本文件中包含mv命令和ftp命令。但是当我运行这个脚本文件时,mv命令失败了 代码: /usr/bin/ftp -i -n $HOST <<END_FTP quote USER $USER quote PASS $PASSWD cd /home/infodba/temploc/test_script/ binary mget Cust*.txt mv Cust*.txt ./archive quit END_FTP exit 0 /usr/bin/ftp-i-n$HOS

我尝试在脚本文件中包含mv命令和ftp命令。但是当我运行这个脚本文件时,mv命令失败了

代码:

/usr/bin/ftp -i -n $HOST <<END_FTP
quote USER $USER
quote PASS $PASSWD
cd /home/infodba/temploc/test_script/
binary
mget Cust*.txt
mv Cust*.txt ./archive
quit
END_FTP

exit 0

/usr/bin/ftp-i-n$HOST
mv
不是有效的ftp命令。如果您试图将刚获取的文件移动到./archive,则需要先退出ftp,或使用
退出命令


!mv Cust*.txt./archive

ftp/sftp不支持mv命令(即,您不能在远程主机中移动文件,但使用bang(!)您将能够在本地主机中执行命令

从远程主机获取文件后,如果您试图在下面的localhost中移动文件,则可以正常工作

/usr/bin/ftp -i -n $HOST <<END_FTP
...
mget Cust*.txt
!mv Cust*.txt ./archive
...
...
END_FTP

/usr/bin/ftp-i-n$HOST我实际上打算在远程计算机上移动文件,而不是本地如果您想在远程计算机上移动文件,请使用ssh登录到远程主机,并将远程文件scp到目标/本地计算机,然后在远程主机上移动文件。然后,您不能在ftp中执行此操作。我想您可以
mput
刚刚获取的文件,但这将是非常低效的。您需要改为“ssh”到远程服务器。