2011-02-02 220 views
2

我在一臺計算機上有一個文本文件,我想將其發送到FTP站點上的文件夾。 有人可以向我展示一個批處理文件代碼,它將使用用戶名和密碼登錄到FTP站點,並複製文本文件。批處理文件將文本文件複製到FTP站點

感謝您的幫助。

+0

是的,我說的是在Windows環境。因此,出於參數的原因,假設文本文件是C:\ textfile.txt,我需要將它複製到名爲BACKUPS – 2011-02-02 05:33:57

回答

9

如果你的意思是一批在Windows批量,你可以做到這一點與下面的腳本tst.cmd

@ftp -n -stst.ftp myTargetMachine.com 

和下面的FTP命令文件tst.ftp(與你的實際的FTP服務器的名稱替換myTargetMachine.com):

user myUser myPassword 
dir 
bye 

顯然,你應該更換myUsermyPassword與您的實際用戶名和密碼,也dir命令窗口輸入第i不管你真正想做的事情,比如:

put localfile.txt /fullpath/remotefile.txt 

如果你談論的是一個類似Unix的環境中,腳本將是:

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

同樣處理與FTP服務器名稱,用戶名和密碼,當然。


而且,響應您的評論:

是的,我說的是在Windows環境。所以出於參數的原因,假設文本文件是C:\ textfile.txt,我需要將它複製到名爲BACKUPS的文件夾中的FTP站點。

你會使用類似以下transfer.cmd的腳本:

@setlocal enableextensions enabledelayedexpansion 
@echo off 
c: 
cd \ 
ftp -n -stransfer.ftp myTargetMachine.com 
endlocal 

transfer.ftp:如果你想在Windows版本爲單個文件

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

,你可以使用例如:

@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,然後在完成時將其刪除。

+0

的文件夾中的FTP站點。因此它們是Windows計算機上的2個獨立文件。一個叫'transfer.cmd',另一個叫'transfer.ftp'? – 2011-02-02 05:59:44

1

命令:

ftp -n -sScriptName HostName 

而在腳本:

[User_id] 
    [ftp_password] 
    ascii 
    put myfilehere.html /remotedir/remotename.txt 
    quit 
相關問題