Скачивание файлов
Перед скачиванием файлов следует обратить внимание на
передаваемые файлы; они информируют о переданных объемах и
что передача не зависла (так что вы не будете сидеть минут
20, полагая, что вы все еще скачиваете файл). В общем случае
хэш-метка появляется, как символ решетки (#), который
печатается через каждые 1024 или 8192 переданных байт, в
зависимости от системы.
Включение хэш-меток осуществляется командой
ftp> hash
Hash mark printing on (8192 bytes/hash mark).
ftp>
два типа файлов: бинарные (двоичные) и текстовые. Большинство
файлов, которые вы будете скачивать - бинарные. Это
программы, скомпрессированные файлы, архивированные файлы и
т.п. Но есть немало и текстовых файлов (вроде README).
Почему тип файла имеет значение? Только потому, что на
некоторых системах (таких, как MS-DOS), определенные символы
текстового файла, вроде возврата каретки, должны быть
преобразованы так, чтобы файл был читаем. А при передаче
бинарных файлов никаких преобразований не осуществляется -
файл просто передается байт за байтом.
Команды bin и ascii используются для перевода соответственно
в бинарный режим передачи файлов и текстовый соответственно.
Если возникают сомнения - используйте бинарный режим. Если
вы попытаетесь передать бинарный файл в текстовом режиме,
файл будет испорчен при передаче до полной бесполезности.
(Это одна из популярнейших ошибок на начальных этапах
использования FTP). Но разумеется, вы можете использовать
текстовый режим для передачи нормальных текстовых файлов
(чьи имена часто заканчиваются на .txt).
Например, мы скачиваем файл README который, скорее всего,
текстовый так что мы используем команду
ftp> ascii
200 Type set to A.
ftp>
каталог, это каталог вашей системы, куда вы хотите в
конечном счете скачать файлы. В то время как команда cd
меняет каталог удаленной машины (машины, на которую вы
вошли по FTP), команда lcd меняет местный (l-local)
каталог.
Например, чтобы установить местный каталог
/home/db/mdw/tmp, используйте команду
ftp> lcd /home/db/mdw/tmp
Local directory now /home/db/mdw/tmp
ftp>
Теперь вы действительно готовы скачивать файлы. Команда
get <remote-name> <local-name>
используется именно для этого, где <remote-name> имя файла
на удаленной машине, а <local-name> - имя, которое вы хотите дать
файлу на вашей машине. <local-name> - необязательный аргумент; по
умолчанию имя местного файла то же, что и у скачиваемого файла.
Но, если например вы скачиваете файл README, и у вас уже есть
файл с именем README в этом каталоге, вам
следует дать другое имя для <local-filename>, чтобы не затереть
существующий. Например, для скачивания файла README мы просто
используем
ftp> get README
200 PORT command successful.
150 ASCII data connection for README (128.84.181.1,4527) (1433
bytes).
#
226 ASCII Transfer complete.
local: README remote: README
1493 bytes received in 0.03 seconds (49 Kbytes/s)
ftp>