将文本文件复制到FTP站点的批处理文件

将文本文件复制到FTP站点的批处理文件,ftp,copy,batch-file,Ftp,Copy,Batch File,我在一台计算机上有一个文本文件,我想将其发送到ftp站点上的文件夹。 谁能给我看一个批处理文件代码,用用户名和密码登录到FTP站点,并复制文本文件 谢谢您的帮助。如果您指的是Windows批处理中的批处理,您可以使用以下脚本tst.cmd: @ftp -n -stst.ftp myTargetMachine.com @setlocal enableextensions enabledelayedexpansion @echo off c: cd \ ftp -n -stransfer.ftp

我在一台计算机上有一个文本文件,我想将其发送到ftp站点上的文件夹。 谁能给我看一个批处理文件代码,用用户名和密码登录到FTP站点,并复制文本文件


谢谢您的帮助。

如果您指的是Windows批处理中的批处理,您可以使用以下脚本
tst.cmd

@ftp -n -stst.ftp myTargetMachine.com
@setlocal enableextensions enabledelayedexpansion
@echo off
c:
cd \
ftp -n -stransfer.ftp myTargetMachine.com
endlocal
(用实际FTP服务器的名称替换
myTargetMachine.com
)和以下FTP命令文件
tst.FTP

user myUser myPassword
dir
bye
user myUser myPassword
put textfile.txt /backups/textfile.txt
bye
显然,您应该将
myUser
myPassword
替换为您的实际用户名和密码,并将
dir
命令替换为您真正想要执行的操作,例如:

put localfile.txt /fullpath/remotefile.txt

如果您谈论的是类UNIX环境,那么脚本应该是:

#!/bin/bash
ftp -n myTargetMachine.com <<EOF
    user myUser myPassword
    dir
    bye
EOF
transfer.ftp

user myUser myPassword
dir
bye
user myUser myPassword
put textfile.txt /backups/textfile.txt
bye

如果希望将Windows版本作为单个文件,可以使用以下内容:

@echo off
echo user myUser myPassword>tst.ftp
echo dir>>tst.ftp
echo bye>>tst.ftp
ftp -n -s:tst.ftp myTargetMachine.com
del /q tst.ftp
它临时创建
tst.ftp
,完成后将其删除。

命令:

ftp -n -sScriptName HostName  
在剧本中:

   [User_id]
   [ftp_password]
   ascii
   put myfilehere.html /remotedir/remotename.txt
   quit

是的,我说的是从Windows环境。因此,为了便于讨论,假设文本文件是C:\textfile.txt,我需要将其复制到名为backups的文件夹中的FTP站点,因此它们是Windows计算机上的两个独立文件。一个名为“transfer.cmd”,另一个名为“transfer.ftp”?是的,虽然Linux提供了一种使用
here docs
的简单方法(请参阅该脚本中的
EOF
内容),但使用Windows并不容易。如果您真的只需要一个脚本,您可以暂时从
x.cmd
创建一个
x.ftp
脚本:查看更新。您可以通过将多个
echo
调用放入一块括号中,一次输出多行。难道你不需要一个临时文件就可以通过管道将它们传输到
ftp
?一行(注释)可能是:
(echo user myPassword&echo dir&echo bye)| ftp…