Если вы имеете в виду пакетный режим, как в пакетном режиме Windows, вы можете сделать это с помощью следующего сценария tst.cmd
:
@ftp -n -stst.ftp myTargetMachine.com
(заменив myTargetMachine.com
именем вашего фактического FTP-сервера) и следующимФайл команды FTP tst.ftp
:
user myUser myPassword
dir
bye
Очевидно, вы должны заменить myUser
и myPassword
вашими реальными именем пользователя и паролем, а также команду dir
тем, что вы действительно хотите сделать,например:
put localfile.txt /fullpath/remotefile.txt
Если вы говорите о среде, подобной UNIX, сценарий будет выглядеть так:
#!/bin/bash
ftp -n myTargetMachine.com <<EOF
user myUser myPassword
dir
bye
EOF
То же самое касается имени сервера FTP, пользователяКонечно, ID и пароль.
И, в ответ на ваш комментарий:
Да, я говорю о среде Windows.Итак, ради аргументов, допустим, текстовый файл - C: \ textfile.txt, и мне нужно скопировать его на FTP-сайт в папке с именем BACKUPS.
Вы бы использовали скрипт, подобный следующемуtransfer.cmd
:
@setlocal enableextensions enabledelayedexpansion
@echo off
c:
cd \
ftp -n -stransfer.ftp myTargetMachine.com
endlocal
и transfer.ftp
:
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
, а затем удаляет его после завершения.