Образовательная программа компании 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