Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Глобальные сети компьютеров. Практическое введение в Internet, E-Mail, FTP, WWW и HTML, программирование для Windows Sockets

© Александр Фролов, Григорий Фролов
Том 23, М.: Диалог-МИФИ, 1993, 283 стр.

[Назад] [Содеожание] [Дальше]

3.2. Программы для работы с протоколом FTP

Первое, что вы можете попробовать, подключившись к сети Internet, это воспользоваться программой FTP для того чтобы загрузить из Internet на диск своего компьютера другие приложения, специально ориентированные на работу с серверами FTP, WWW , а также предназначенные для работы с электронной почтой и конференциями.

Программа FTP есть в составе операционных систем Microsoft Windows 95 (при добавлении расширения Microsoft Plus) и Microsoft Windows NT, поэтому как только вы установите соединение с Internet, то сможете сразу ей воспользоваться.

Параметры программы FTP

Запуская программу FTP в среде указанных выше операционных систем, вы можете при необходимости задать параметры, перечисленные ниже:

Параметр Описание
Адрес удаленного узла Доменное имя или адрес IP удаленного узла, к которому необходимо подключиться для передачи файлов с использованием протокола FTP
-v Этот параметр отменяет отображение данных, поступающих от удаленного узла в ваш компьютер
-n Параметр отменяет процедуру автоматического подлкючения к серверу
-i Выключение отображения командного приглашения при одновременной передаче нескольких файлов
-d Используется при отладке. Вызывает отображение всех команд, передаваемых между вашим компьютером и удаленным узлом
-g Запрещение использования символов шаблонов в именах каталогов и файлов
-s:имя файла Имя текстового файла, содержащего команды, которые будут автоматически выполнены после запуска программы FTP

Обычно в качестве параметра при запуске программы FTP указывают имя или адрес удаленного сервера FTP, с которым собираются соединиться для передачи файлов:

c:\>ftp ftp.microsoft.com

В данном случае предпринимается попытка подключения к серверу FTP корпорации Microsoft.

Команды программы FTP

После запуска программы FTP вы увидите командное приглашение:

ftp>

В этом командном приглашении вы можете вводить команды из приведенного ниже списка:

Команда Описание
! Запуск команды на удаленном компьютере
? Получение справки по использованию команд программы FTP
append Добавление локального файла к файлу на удаленном компьютере
ascii Установка текстового режима пересылки файлов
binary Установка двоичного режима пересылки файлов
bell Включение или выключение звуковой сигнализации окончания процесса пересылки файлов
bye Завершение сеанса связи с удаленным узлом и выход из программы FTP
cd Изменение текущего каталога на удаленном узле
close Завершение сеанса связи с удаленным узлом
debug Переключение режима отладки
delete Стирание указанных файлов на удаленном компьютере
dir Отображение списка каталогов и файлов на удаленном узле
disconnect Отсоединение от удаленного компьютера
get Копирование файла из удаленного узла на диск локального компьютера
glob Переключение режима использования символов шаблона в имени файлов или каталогов
hash Переключение режима отображения символа # после передачи каждого блока данных размером 2048 байт
help Получение справки по использованию команд программы FTP
lcd Изменение текущего каталога на локальном компьютере
ls Отображение списка файлов и каталогов на удаленном узле
mdelete Стирание файлов на удаленном узле
mdir Отображение списка каталогов и файлов на удаленном узле с возможностью одновременного указания нескольких файлов
mget Копирование нескольких файлов из удаленного узла на диск локального компьютера
mkdir Создание каталога на удаленном узле
mls Отображение списка каталогов и файлов на удаленном узле с возможностью одновременного указания нескольких файлов
mput Передача файлов с локального диска на диск удаленного узла с возможностью передачи нескольких файлов сразу
open Подключение к указанному серверу FTP
prompt Переключение режима подтверждения пересылки файлов в случае передачи нескольких файлов командами mget или mput
put Передача файлов с локального диска на диск удаленного узла
pwd Отображение текущего каталога на удаленном компьютере
quit Завершение сеанса связи с удаленным узлом и выход из программы FTP
recv Копирование файла из удаленного узла на диск локального компьютера
remotehelp Получение справки по использованию команд программы FTP для удаленного компьютера
rename Переименование файла, расположенного на диске удаленного узла
rmdir Стирание каталога с диска удаленного узла
send Передача файлов с локального диска на диск удаленного узла
status Отображение текущего состояния соединения с удаленным узлом и текущих режимов работы программы FTP
trace Переключение режима трассировки. При включенной трассировке отображается маршрутизация пакетов данных
type Установка или отображение типа передаваемых файлов (текстовые или двоичные)
user Определение идентификатора пользователя для удаленного компьютера
verbose Включение или выключение режима, при котором отображаются сообщения при завершении передачи данных и статистика

Не все команды из этого длинного списка вам будет нужно использовать.

Подключение к серверу FTP

Для подключения к удаленному серверу FTP введите команду open, указав ей в качестве параметра имя сервера или его адрес IP. В ответ на эту команду удаленный серевер предложит вам ввести имя пользователя и пароль. Как правило, вы всегда должны указывать имя anonymous и свой электронный почтовый адрес в качестве пароля.

В любой момент времени после установки соединения с сервером FTP вы можете ввести имя пользователя при помощи команды user.

Отключение от сервера FTP

Если сервер FTP вам больше не нужен, закройте соединение с ним командой close.

Просмотр содержимого каталогов сервера

Для просмотра содержимого текущего каталога, расположенного на диске удаленного компьютера, воспользуйтесь командами dir или ls. Перемещаться по дереву каталогов удаленного узла вы сможете при помощи команды cd.

Установка режима передачи файлов

Перед началом передачи файлов необходимо установить текстовый или двоичный режим передачи данных, пользуясь командами ascii или binary, не имеющих параметров. Если вы ошибетесь и попытаетесь передать двоичные данные в текстовом режиме, содержимое файла будет искажено. Передача текстовых данных в двоичном режиме также ни к чему хорошему не приведет.

Как определить тип данных, хранящихся в файле?

Можно попытаться использовать для этого расширение имени файла или имя файла. Например, файл readme.txt скорее всего текстовый, в то время как файл virus.exe, очевидно, двоичный, так как представляет собой программу.

К сожалению, трудно дать какие-либо более конкретные рекомендации по определению типа данных. Скажем только, что обычно в каждом каталоге хорошо организованного сервера FTP находится описание содержимого в виде текстового файла с характерным именем (readme.txt, index00.txt и так далее).

Получение файлов

Основная команда, которой вы будете пользоваться для переписывания файлов с дисков удаленного узла на диски локального компьютера, это команда get. В качестве параметра ей необходимо указать имя нужного вам файла.

Если вам нужно одновременно получить все или несколько файлов из текущего каталога удаленного узла, воспользуйтесь командой mget, указав ей в качестве параметра шаблон имени файла (аналогичный тому, что используется в MS-DOS).

Прочие команды

Если вы забыли команды программы FTP , воспользуйтесь командой help. Указав ей в качестве параметра имя любой команды, вы сможете посмотреть ее краткое описание. При вводе команды без параметров отображается полный список команд. Аналогичные действия выполняются по команде ?.

Командой bye вы можете воспользоваться для завершения работы программы FTP .

Что же касается команд пересылки файлов с локального компьютера на диски удаленного узла, создания каталогов, стирания и переименования файлов, а также каталогов на удаленном компьютере, то они обычно вам недоступны. Администратор никогда не разрешит любому пользователю выполнять подобные операции на своем сервере FTP .

Программа FTP для IBM OS/2 Warp Connect

Если вы работаете в среде операционной системы IBM OS/2 Warp Connect, вы тоже можете работать с программой FTP , запустив ее из папки TCP/IP Utilities. После запуска на экране появляется окно программы FTP и вы можете вводить в нем только что описанные команды (рис. 3.7).

Рис. 3.7. Программа FTP для IBM OS/2 Warp Connect

Приложение WS_FTP для Microsoft Windows

Программа WS_FTP представляет собой шаг (или несколько шагов?) вперед по сравнению с только что описанной программой FTP, так как она обеспечивает существенно более удобный способ работы с серверами FTP. Еще один способ работы с серверами FTP основан на использовании приложений-навигаторов WWW , о которых мы расскажем в этой главе немного позже.

Общее представление об использовании программы WS_FTP вы получили из первой главы нашей книги. Здесь мы дадим конкретные рекомендации по получению этой программы из сети Internet, по ее установке, настройке и использованию.

Получение программы WS_FTP

Прежде всего вам необходимо переписать к себе на диск программу WS_FTP с одного из серверов, указанных в документации к программе:

ftp.coast.net/SimTel/win3/winsock/ws_ftp.zip 
ftp.coast.net/SimTel/win3/winsock/ws_ftp32.zip 
winftp.cica.indiana.edu/pub/pc/win3/winsock/ws_ftp.zip
winftp.cica.indiana.edu/pub/pc/win3/winsock/ws_ftp32.zip
ftp.usma.edu/pub/msdos/winsock.files/ws_ftp.zip
ftp.usma.edu/pub/msdos/winsock.files/ws_ftp32.zip
ftp.csra.net/pub/win32
ftp>

Мы воспользуемся сервером ftp.csra.net.

Итак, запустите программу FTP и подсоединитесь к указанному серверу:

ftp> open ftp.csra.net
Connected to news2.csra.net.
220 news2 Windows NT FTP  Server (Version 3.5).
User (news2.csra.net:(none)): anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.
Password:frolov@glas.apc.org
230 Anonymous user logged in as ftpuser (guest access).
ftp>

В качестве имени используйте anonymous, а для пароля используйте свой полный почтовый адрес. Затем перейдите в каталог pub и посмотрите, какие файлы и каталоги в нем имеются:

ftp> cd pub
250 CWD command successful.
ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
dr-xr-xr-x   1 owner    group               0 Mar  1 22:01 msdos
dr-xr-xr-x   1 owner    group               0 Mar  1 22:00 win3
dr-xr-xr-x   1 owner    group               0 Mar  2  7:21 win32
226 Transfer complete.
197 bytes received in 0.05 seconds (3.94 Kbytes/sec)
ftp>

Нас интересуют версии программы WS_FTP для операционных систем Microsoft Windows 95 и Microsoft Windows NT, поэтому перейдите в каталог win32 и просмотрите его содержимое:

ftp> cd win32
250 CWD command successful.
ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
-r-xr-xr-x   1 owner    group        11906 Mar  1 21:59 watch95.txt
-r-xr-xr-x   1 owner    group       308610 Mar  1 20:09 watch95.zip
-r-xr-xr-x   1 owner    group         8631 Mar  1 21:57 ws_ftp32.txt
-r-xr-xr-x   1 owner    group       197468 Mar  2  7:21 ws_ftp32.zip
-r-xr-xr-x   1 owner    group        11851 Mar  1 21:57 ws_watch.txt
-r-xr-xr-x   1 owner    group       307757 Mar  1 20:10 ws_watch.zip
-r-xr-xr-x   1 owner    group         9006 Mar  1 21:57 wsftp32a.txt
-r-xr-xr-x   1 owner    group       201386 Mar  1 20:39 wsftp32a.zip
-r-xr-xr-x   1 owner    group         4633 Mar  1 21:58 wsping32.txt
-r-xr-xr-x   1 owner    group        57314 Mar  1 20:10 wsping32.zip
226 Transfer complete.
728 bytes received in 0.22 seconds (3.31 Kbytes/sec)
ftp>

Теперь мы займемся получением текстовых и двоичных файлов, расположенных в этом каталоге. Сначала давайте получим все текстовые файлы, воспользовавашись для этого командой mget:

ftp> mget *.txt
mget watch95.txt? y
200 PORT command successful.
150 Opening ASCII mode data connection for watch95.txt.
mget wsftp32a.txt? y
200 PORT command successful.
150 Opening ASCII mode data connection for wsftp32a.txt.
226 Transfer complete.
9006 bytes received in 8.29 seconds (1.09 Kbytes/sec)
mget wsping32.txt? y
200 PORT command successful.
150 Opening ASCII mode data connection for wsping32.txt.
226 Transfer complete.
4633 bytes received in 6.59 seconds (0.70 Kbytes/sec)
mget ws_ftp32.txt? y
200 PORT command successful.
150 Opening ASCII mode data connection for ws_ftp32.txt.
226 Transfer complete.
8631 bytes received in 8.24 seconds (1.05 Kbytes/sec)
ftp>

Перед тем как выполнить пересылку файла, команда mget запрашивает подтверждение, на которое вы должны ответить вводом символа y. Если вы запустили программу FTP в среде Microsoft Windows 95, то все принятые файлы по умолчанию будут записаны в тот каталог, где установлена эта операционная система.

Для передачи файлов программных архивов переключитесь в двоичный режим пересылки файлов:

ftp> binary
200 Type set to I.
ftp>

Теперь можно выполнять пересылку:

ftp> mget *.zip
mget watch95.zip? y
200 PORT command successful.
150 Opening BINARY mode data connection for watch95.zip.
226 Transfer complete.
308610 bytes received in 155.99 seconds (1.98 Kbytes/sec)
mget wsftp32a.zip? y
200 PORT command successful.
150 Opening BINARY mode data connection for wsftp32a.zip.
226 Transfer complete.
201386 bytes received in 160.93 seconds (1.25 Kbytes/sec)
mget wsping32.zip? y
200 PORT command successful.
150 Opening BINARY mode data connection for wsping32.zip.
226 Transfer complete.
57314 bytes received in 87.11 seconds (0.66 Kbytes/sec)
mget ws_ftp32.zip? y
200 PORT command successful.
150 Opening BINARY mode data connection for ws_ftp32.zip.
226 Transfer complete.
197468 bytes received in 150.26 seconds (1.23 Kbytes/sec)

Выполнив пересылку, отключитесь от сервера FTP и завершите работу программы FTP про помощи команды bye.

Установка и запуск программы WS_FTP

Получив все необходимые файлы архивов, прочтите их описание, которое должно находиться в текстовых файлах. Затем создайте на своем диске каталог, например с именем WS_FTP , и скопируйте в него все файлы из архива wsftp32a.zip (это самая последняя бета-версия программы FTP_32 на момент написания данной книги).

Затем создайте на поверхности рабочего стола или в любой выбранной вами папке теневую пиктограмму, соответствующую файлу ws_ftp32a.exe.

Для запуска соединитесь с сервером поставщика услуг Internet и сделайте двойной щелчок левой клавишей мыши по созданной пиктограмме. Вы увидите главное окно программы WS_FTP (рис. 3.8).

Рис. 3.8. Главное окно программы WS_FTP

Сразу после запуска на переднем плане появится диалоговая панель Session Profile, с помощью которой можно выбрать сервер FTP для подключения. В дальнейшем вы будете вызывать на экран эту диалоговую панель, нажимая кнопку Connect, расположенную в левом нижнем углу главного окна программы WS_FTP.

Настройка параметров программы WS_FTP

Для настройки программы WS_FTP необходимо закрыть диалоговую панель Session Profile (если она открыта), нажав на ней кнопку Cancel, и затем нажать кнопку Options в главном окне приложения.

После этого на окне появится диалоговая панель Options, показанная на рис. 3.9.

Рис. 3.9. Диалоговая панель Options, предназначенная для настройки параметров программы WS_FTP

В этой диалоговой панели нажмите кнопку Program Option, после чего вы увидите одноименную диалоговую панель, позволяющую настроить наиболее важные параметры приложения (рис. 3.10).

Рис. 3.10. Диалоговая панель Program Option

Воспользовавшись группой переключателей Listbox Font, вы можете выбрать шрифт, которым отображаются имена файлов и каталогов в окне приложения. Выберите тот шрифт, который вам больше нравится.

С помощью переключателя Alternate Screen Layout вы можете изменить расположение окон, отображающих содержимое каталогов локального и удаленного узла. Если этот переключатель включен, содержимое каталогов локального узла отображается в верхней части окна приложения, а содержимое каталогов удаленного узла - в нижней. Такое альтернативное расположение окон удобнее в том отношении, что для имен файлов в окнах остается больше места. Это имеет значение, если вы работаете с длинными именами файлов.

Включив переключатель Show Buttons at Top of Screen вы можете изменить расположение управляющих кнопок, переместив их в верхнюю часть экрана.

В поле Text Viewer вы можете указать имя программы, которая будет использована для просмотра содержимого текстовых файлов. По умолчанию используется приложение Notepad.

Так как для подключения к серверам FTP вы должны указывать пароль, в поле E-Mail Address следует занести свой электронный почтовый адрес.

С помощью группы переключателей Double Click вы можете изменить действие, выполняемое после того как пользователь сделает двойной щелчок по имени файла в окне просмотра. По умолчанию файл будет передаваться, так как включен переключатель Transfer. Включив переключатель View вы можете заменить передачу файла просмотром. А если включить переключатель Nothing, на двойной щелчок со стороны приложения не будет никакой реакции.

Описание остальных органов управления, расположенных в этой диалоговой панели, вы найдете в справочной системе приложения, для чего следует нажать кнопку Help.

Нажав в диалоговой панели Options (рис. 3.9) кнопку Session Options, вы можете настроить параметры, которые будут использоваться по умолчанию при соединении с серверами FTP . Соответствующая диалоговая панель показана на рис. 3.11.

Рис. 3.11. Диалоговая панель Session Options

В поле Host Type можно указать тип операционной системы, работающей на удаленном узле (если вы его знаете). По умолчанию выполняется автоматическое определение, которое работает практически во всех случаях.

Обратите внимание на группу переключателей Transfer Mode, определяющую режим передачи файлов. По умолчанию файлы передаются в двоичном режиме (включен переключатель Binary). Вы также можете включить текстовый режим (ASCII) или режим L8, предназанченный для передачи двоичных файлов из узлов, работающих под управлением операционной системы VMS .

Еслив диалоговой панели Options (рис. 3.9) нажать кнопку ASCII Extensions, на экране появится диалоговая панель Auto Detect Extensions (рис. 3.12).

Рис. 3.12. Диалоговая панель Auto Detect Extensions

В этой диалоговой панели вы можете отредактировать список расширений имен файлов, которые приложение WS_FTP передает в текстовом режиме. Для того чтобы добавить новое расширение в этот список, его следует ввести в поле ASCII Mode, а затем нажать кнопку Add. Для удаления расширения из списка его нужно выделить и нажать кнопку Delete.

Программа WS_FTP способна автоматически изменять расширение имен файлов при передаче. Для редактирования списка соответствия расширений вы должны нажать в диалоговой панели Options кнопку Extensions Conversions. При этом на экране появится диалоговая панель Convert Extensions, показанная на рис. 3.13. По умолчанию список соответствия пуст.

Рис. 3.13. Диалоговая панель Convert Extensions

Нажав в диалоговой панели Options кнопку File Associations, вы можете в диалоговой панели Associate (рис. 3.14) указать связь между расширением имени файла и приложением, которое должно обрабатывать этот файл при его запуске кнопкой Exec.

Рис. 3.14. Диалоговая панель Associate

Кнопки в главном окне приложения WS_FTP

Ниже мы приведем список кнопок, расположенных в главном окне приложения WS_FTP вместе с кратким описанием их назначения.

Кнопка Описание
Connect Вызов на экран диалоговой панели Session Profile для выбора сервер FTP , к которому будет выполняться подключение
Cancel Отмена выполнения операции
LogWnd Отображение окна протоколирования выполненных команд
Help Получение справки по использованию приложения
Option Настройка параметров приложения
About Просмотр информации о разработчике приложения
Exit Завершение работы приложения
ChgDir Смена каталога
MkDir Создание нового каталога
RmDir Удаление каталога
*.* Указание маски для имен
Send Передача файла
View Просмотр файла
Exec Выполнение файла
Rename Переименование файла
Delete Удаление файла или каталога
Refresh Обновление окна, отображающего содержимое каталога
DirInfo Просмотр подробной информации о каталоге

Расширение списка серверов FTP

Для того чтобы добавить новый сервер FTP в список Profile Name, расположеный в диалоговой панели Session Profile (рис. 3.8), вы должны нажать кнопку New, которая находится в указанной диалоговой панели.

Далее вы должны заполнить поля диалоговой панели так, как это сделано для других серверов FTP , имеющихся в списке.

В поле Host Name следует указать доменное имя сервера или его адрес IP в виде четырех десятичных чисел, разделенных точками.

Далее вам нужно включить переключатлеь Anonymous Login. При этом поля User ID (идентификатор пользователя) и Password (пароль) будут заполнены автоматически. При необходимости вы можете изменить содержимое указанных полей.

В группе органов управления Initial Directories можно задать пути к локальному и удаленному каталогу, которые будут текущими после установки соединения.

Сделав все изменения, нажмите кнопку Save. Список Profile Name будет дополнен.

Приложение FTP -PM для IBM OS/2 Warp Connect

В составе пакета IBM Internet Connection входит приложение FTP -PM, которое предназначено для обмена файлами с серверами FTP. И хотя это приложение не такое многофункциональное, как только что описанное приложение WS_FTP, оно также достаточно удобно в работе.

Для запуска приложения сделайте двойной щелчок левой клавишей мыши по пиктограмме FTP -PM, расположенной в папке Internet Utilities (рис. 2.64). Если вы уже установили соединение с Internet, то через некоторое время на экране появится главное окно приложения FTP-PM, показанное на рис. 3.15.

Рис. 3.15. Главное окно прилжоения FTP -PM после подключения к серверу GlasNet с адресом ftp.glas.apc.org

Для подключения к удаленному серверу FTP вы должны выбрать строку Open Remote Host из меню File. В появившейся на экране диалоговой панели FTP-PM - Open Remote Host (рис. 3.16) следует указать адрес удаленного сервера, имя пользователя и пароль.

Рис. 3.16. Диалоговая панель FTP -PM - Open Remote Host

В качестве имени пользователя следует указать anonymous, а в качестве пароля - свой электронный почтовый адрес.

После подключения в нижней части окна приложения FTP -PM появится содержимое каталогов удаленного узла. Передвигаться по дереву каталогов можно с помощью мыши, делая двойной щелчок по имени каталога или строке "..". В последнем случае будет выполнен переход в каталог более высокого уровня.

Перед тем как копировать файлы, вы должны указать режим передачи данных - текстовый или двоичный. Для этого выберите из меню Options строку Transfer mode. Далее в меню второго уровня выберите строку ASCII для текстового режима и Binary для двоичного.

Затем в том окне, где отображаются каталоги и файлы удаленного сервера, выделите нужный вам файл и выберите из главного меню строку QuickTrans. На экране появится диалоговая панель FTP -PM - Get Remote Files, на которой будет показано имя выбранного вами файла и другая информация. В этой диалоговой панели вы должны нажать кнопку YES, после чего начнется процесс передачи данных. Вы сможете наблюдать за этим процессом с помощью диалоговой панели FTP-PM - Transfer Progress, в которой будет отображаться объем переданных данных.

[Назад] [Содеожание] [Дальше]