FTP通过批处理脚本上传最新文件

时间:2017-05-10 15:24:39

标签: windows batch-file ftp

这是我试过的脚本。有人可以帮助修复脚本中的错误吗?

FTPCommands.txt

open $hostname
user $username 
$password
latest_file=$(ls  File_Name* | tail -1)
binary
dir=F:/home/user/myFolder
cd $dir
put $latest_file
quit

将脚本作为FTPTest.bat运行

ftp -i -s FTPCommands.txt > FTPLog.txt

当我在脚本中调用目录时,日志中会显示550错误代码。

1 个答案:

答案 0 :(得分:1)

您正在将FTP命令与shell文件中的shell命令混合使用。例如,第四行根据管道命令的输出设置一个值(以bash语法表示),其中一个是tail - 这在FTP协议中是不可能的。另外,根据.bat扩展名和dir变量中的路径判断,您在Windows中运行此命令。

在FTP命令列表文件(在bat文件中)之外准备变量,并将其替换。并且不要忘记FTP不是shell会话,您不能在其中发出任何典型的* nix命令。