Образовательная программа компании Global Inform. Украина, Харьков
Передача и прием файлов
Многие люди, использующие Internet, не имеют с ней прямой
связи. Они подключаются к хост-компьютеру со своего персонального
компьютера через модем прямо из офиса или из дома. Так как боль-
шинство шлюзов Internet имеют символьно-ориентированные интерфей-
сы, вы можете использовать на ПК практически любую коммуникацион-
ную программу, которая позволяет обращаться к Internet.
Как быть в том случае, если вы хотите загрузить из Internet
файлы или передать их? Эти операции выполнить несложно, однако
стандартного способа не существует.
Загружают из Internet или передают обычно два типа файлов:
текстовые (так называемые файлы ASCII) и выполняемые. Разница
между ними заключается в том, что текстовые файлы содержат только
читаемый текст, а двоичные содержат специальные "нечитаемые" сим-
волы. Метод передачи текстовых файлов между ПК и хост-компьютером
Unix сильно отличается от методов передачи двоичных файлов. Еще
более усложняет дело то, что способы передачи текстовых и двоич-
ных файлов между двумя компьютерами с ОС Unix также могут быть
различными.
В данном разделе описываются команды Unix, которые можно ис-
пользовать для передачи файлов на персональные компьютеры. Пос-
кольку ПК могут быть различных типов, и на каждом типе ПК могут
работать десятки видов коммуникационного программного обеспече-
ния, конкретные инструкции по передаче файлов привести невозмож-
но. Однако большинство современных коммуникационных программ для
ПК имеет несколько общих средств, позволяющих выполнять такую пе-
редачу. Общее описание таких средств вы здесь и найдете. Это опи-
сание предполагает, что на ПК вы используете умеренно сложное
программное обеспечение: сегодня существует множество свободно
распространяемых или недорогих программ, которые прекрасно спра-
вятся с этой работой.
Лучший способ передачи файла с вашего ПК на хост-компьютер
Unix состоит в том, чтобы "ввести" содержимое файла c вашего пер-
сонального компьютера в файл хост-компьютера. Выполните следующие
шаги:
1. На хост-компьютере Unix наберите команду cat, укажите
после нее символ > и имя текстового файла, который вы хо-
тите получить на хост-компьютере Unix. Например, если вы
хотите, чтобы файл назывался sourses-list.txt, можно вос-
пользоваться командой:
% cat >sources-list.txt
Команда cat будет ждать, пока вы не наберете текст файла.
2. Дайте на своем ПК команду, используемую для "вывода"
текстовых файлов на удаленном компьютере. В названии этой
команды обычно содержится слово type или слова send text
либо dowload text.
3. Набрав файл, нажмите на хост-компьютере Unix Ctrl-D. Это
завершит ввод файла, и вы снова увидите приглашение Unix.
Давая команды для вывода на удаленный компьютер не исполь-
зуйте команд со словами XMODEM, YMODEM, ZMODEM или Kermit. Это
может привести к тому, что такие файлы невозможно будет использо-
вать.
Лучшим способом получения коротких файлов является использо-
вание средств "захвата", "сохранения текста" или "загрузки текс-
та" вашего персонального компьютера. Большинство программ имеют
такое средство, хотя объем сохраняемого файла часто ограничен.
Используйте следующие шаги:
1. На хост-компьютере Unix наберите команду cat, указав пос-
ле нее символ < и имя передаваемого файла. Клавишу Enter
пока нажимать не нужно.
2. Запустите на своем ПК средство захвата, сохранения или
загрузки текста.
3. Чтобы начать передачу файла, нажмите на хост-компьютере
Unix клавишу Enter.
4. После завершения передачи файла остановите прием текста
на своем ПК.
Этот метод не позволяет получить на своем ПК точную копию
файла. В загруженном файле в первом символе будет присутствовать
дополнительный символ возврата каретки. Если хотите, эти символы
можно отредактировать с помощью текстового редактора.
Чтобы передать двоичные файлы, на обоих компьютерах должно
работать программное обеспечение передачи файлов, использующее
один и тот же протокол. Чаще всего используются такие протоколы
как XMODEM, YMODEM, ZMODEM и Kermit. Первые три протокола связа-
ны. Первым был написан XMODEM, за ним последовал YMODEM, потом
ZMODEM. Протокол Kermit был написан и разработан отдельно. Если у
вас есть выбор, то лучше использовать ZMODEM. Это протокол обычно
быстрее, и работать с ним легче.
Чаще всего в протоколах используются следующие команды:
Протокол Команда
XMODEM rx имя_файла
YMODEM rb
ZMODEM rz
Kermit kermit -r
Однако в ваших системах Unix могут применяться другие коман-
ды, поэтому спросите своего системного администратора.
Для передачи файла хост-компьютеру Unix используйте следую-
щие шаги:
1. На хост-компьютере Unix дайте команду, подготавливающую
его к приему файла. Эта команда зависит от типа программ-
ного обеспечения, имеющегося в вашей системе Unix (как
описывается выше).
2. На своем ПК используйте команду, посылающую двоичные фай-
лы. В имени такой команды часто можно встретить слова
"upload", "transfer binary" или "send binary".
3. Обычно ваш персональный компьютер информирует вас о про-
цессе передачи файла. Как правило он сообщает вам также о
завершении передачи.
4. Если вы не видите на экране приглашения Unix, нажмите
несколько раз клавишу Enter.
Как можно видеть, эти шаги работают не всегда. Наиболее об-
щей ошибкой является несовпадение команд на этих двух компьюте-
рах, например, попытка приема с помощью протокола XMODEM при ис-
пользовании ZMODEM.
Поскольку текстовые файлы - это подмножество двоичных фай-
лов, вы можете посылать текстовые файлы также как двоичные. Такой
режим передачи имеет свои преимущества и недостатки. Преимущество
передачи двоичных файлов состоит в том, что такой режим передачи
меньше подвержен ошибкам. Так как программы передачи двоичных
файлов обеспечивают абсолютную целостность, вы не будете подвер-
жены таким помехам как шумы в телефонной линии. Недостаток в том,
что формат текстового файла может не совпадать с тем форматом,
который ожидает Unix. (Обычно это относится к передаче файлов с
PC-совместимых компьютеров.) В текстовых файлах Unix каждая стро-
ка заканчивается символом возврата каретки. В текстовых файлах РС
символы заканчиваются символами возврата каретки и перевода стро-
ки. На компьютерах с Unix и других ПК чтение таких текстовых фай-
лов может вызывать трудности.
Чтобы передать текстовые файлы как двоичные, вы должны быть
уверены, что строка заканчивается только символом возврата карет-
ки. Сначала стоит попробовать передать тестовый файл. После пере-
дачи проверьте результаты, выведя файл в хост-системе Unix с по-
мощью команды more.
Передача файлов с хост-системы Unix на ваш ПК требует выпол-
нения перечисленных выше шагов в обратном порядке. Наиболее общи-
ми командами протоколов являются следующие команды:
Протокол Команда
XMODEM sx имя_файла
YMODEM sb имя_файла
ZMODEM sz имя_файла
Kermit kermit -s имя_файла
Как уже говорилось, в вашей хост-системе Unix могут исполь-
зоваться другие команды. Спросите об этом у системного админист-
ратора.
1. В хост-системе Unix дайте команду, начинающую передачу
файлов. Эта команда зависит от типа программного обеспе-
чения, доступного в вашей системе Unix (как уже говори-
лось выше).
2. На персональном компьютере дайте команду, начинающую при-
ем двоичных файлов. Если вы используете протоколы ZMODEM
или Kermit, некоторые виды программного обеспечения обна-
руживаются передаваемые в соответствии с этими протокола-
ми файлы и автоматически начинает их прием.
3. Обычно ваш персональный компьютер информирует вас о про-
цессе передачи файла. Как правило он сообщает вам также о
завершении передачи.
4. Если вы не видите на экране приглашения Unix, нажмите
несколько раз клавишу Enter.
Если обе системы Unix имеют постоянную связь с Internet, то
передачу файлов достаточно просто выполнить с помощью команд ftp.
(Соответствующие шаги описываются в разделе, посвященном ftp.)
Программа ftp - это единственный метод, который вы можете исполь-
зовать для непосредственного копирования файлов. Если вы не може-
те использовать команду ftp для передачи файлов с локального
компьютера на удаленный, то можно воспользоваться другим методом
- передать файл работающему на данном компьютере пользователю с
помощью электронной почты.
Метод, применяемый для передачи файлов по электронной почте,
зависит от используемой программы электронной почты. Однако, не-
зависимо от этой программы, важно помнить, что таким способом вы
можете посылать только текстовые файлы, но не файлы ASCII. Если
вы хотите передать двоичный файл, используйте для преобразования
этого файла в текстовый вид следующие шаги. Этот метод годится и
для текстовых файлов (при этом они обычно уменьшаются в размере).
1. Упакуйте файл с помощью команды compress. Результатом бу-
дет двоичный файл, имя которого совпадает с именем ориги-
нала, а расширением будет .Z. Например, если вы хотите
послать файл spiral, то можете использовать следующую ко-
манду:
% compress spiral
2. Для преобразования команды из упакованного в текстовый
вид используйте команду uuencode. Полезно присвоить ново-
му файлу имя, указывающее на то, что он закодирован (нап-
ример, добавить в конец .uue), например:
% uuencode spiral.Z <spiral.Z
>spiral.Z.uue
3. Для передачи файла-результата используйте программу
электронной почты.
4. Когда получатель примет весь файл, ему следует сохранить
его на диске удаленной системы.
5. Чтобы преобразовать этот файл снова в упакованный двоич-
ный вид, используйте команду uudecode:
% uudecode spiral.Z.uue
6. Наконец, распакуйте декодированный файл:
% uncompress spiral.Z