Вместо использования lcd
лучшей идеей может быть изменение рабочего каталога во внешнем пакетном файле.
@echo off
@pushd "c:\documents and settings\%username%\my documents\FTP"
@ftp -s:"%~f0" &GOTO: EOF
open FTP.server.com
user
pass
cd /home/ftp
bin
mput *txt
@pause
Единственная проблема, связанная с этим решением, заключается в том, что сам скрипт больше не работает.в рабочем каталоге, и поэтому вам нужно добавить путь для этого.(Или поместите его в папку FTP;)
Кроме того, незначительная педантичность, но это не совсем правильный способ найти Мои документы.В частности, в Vista или Windows 7 профили пользователей хранятся в C:\Users
.Кроме того, пользователи могут перемещать Мои документы (на моем компьютере Мои документы находятся в D:\Mike's Documents
)
Однако, похоже, что нет переменной среды, которая указывает непосредственно на Мои документы, поэтомувам придется обойтись этим:
"%userprofile%\my documents\FTP"
Если люди, работающие с этим сценарием, работают под управлением XP и не перемещают свои «Мои документы», то это на самом деле не имеет значения.