Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пересылка группы файлов




Команды get и put, рассмотренные нами ранее, могут пересылать файлы только по одному. Иногда возникает необходимость пересылки группы файлов. Для этого следует использовать команды mput и mget. Они имеют следующий синтаксис:

 

ftp> mput список_файлов

ftp> mget список_файлов

 

Команда mput находит указанные в списке файлы и копирует их в удаленную систему. Команда mget копирует файлы из удаленной системы в локальную. В обоих случаях имена файлов при перемещении из одной системы в другую сохраняются. Длина списка файлов не ограничена. В нем допускается использование универсальных символов подстановки.

Реальные правила раскрытия универсальных символов более сложны, чем изложено в документации программы ftp. Практически без проблем везде можно использовать звездочку (*) для обозначения любого количества символов (от нуля и более). В UNIX-системах можно применять вопросительный знак (?) для обозначения любого символа (но только одного). В других системах Вам придется немножко поэкспериментировать или довольно внимательно изучить документацию, чтобы узнать, что именно допускается.[6] Ниже приведен типичный пример сеанса с использованием команд mput и mget:

ftp> cd work перейти в другой каталог на удаленном компьютере

250 CWD command successful.

ftp> ls b* посмотреть, какие там имеются файлы

200 PORT command successful.

150 ASCII data connection for /bin/ls (127.0.0.1,1129) (0 bytes).

b. tst

bash.help

bsdman. sh

226 ASCII Transfer complete.

remote: b*

29 bytes received in 0.03 second (0.94 Kbytes/s)

ftp> mget b* попробовать переслать файл

mget b.tst? yes первый файл: нужен?

200 PORT command successful.

150 ASCII data connection for b.tst (127.0.0.1,1133) (68112 bytes).

226 ASCII Transfer complete.

local: b.tst remote: b.tst

81927 bytes received in 0.41 seconds (2e+02 Kbytes/s)

mget bash.help? no второй файл: нужен?

mget bsdman.sh? no третий файл: нужен?

 

Теперь попробуем переслать на удаленный компьютер группу файлов командой mput. Зададим в командной строке два имени явно, чтобы показать, как это делается.

 

ftp> mput login tblsz.c попробуем передать несколько файлов

mput login? уеs первый файл: нужен?

200 PORT command successful.

150 ASCII data connection for login (127.0.0.1,1139).

226 Transfer complete.

local: login remote: login

2785 bytes sent in 0.03 seconds (91 Kbytes/s)

mput tblsz.c? у второй файл: нужен?

200 PORT command successful.

150 ASCII data connection for tblsz.c (127.0.0.1,1141).

226 Transfer complete.

local: tblsz.c remote: tblsz.c

975 bytes sent in 0.04 seconds (24 Kbytes/s)

ftp>

 

Отметим, что приведенная выше команда mput login tblsz.c не означает "передать файл login на удаленный компьютер под именем tblsz.c", как это было бы в простой команде put. Она означает "скопировать все файлы, указанные в командной строке, в удаленную систему, в текущий каталог без изменения имен".

Программа ftp обычно просит подтвердить Ваше намерение относительно пересылки каждого из указанных файлов. При положительном решении введите у (или yes, или нажмите клавишу [Enter]).

Ввод n (или nо)[7] отменяет пересылку. Отвечать на запросы по каждому файлу надоедает (особенно если файлов очень много), но это поможет Вам избежать ошибок. Если этот процесс все-таки утомляет Вас или если пересылаемая группа файлов просто-таки огромна, задайте команду prompt, которая запретит выдачу запросов. В этом случае вся группа файлов будет передана без запросов на подтверждение. Повторный ввод команды prompt вновь включает режим запросов.

Необходимо обратить особое внимание на следующие моменты:

  • Помните, что имя выходного файла в командной строке не указывается. Все имена в командной строке интерпретируются как исходные файлы. Особенно велико искушение попробовать скопировать группу файлов в каталог; будьте осторожны! Ни в коем случае нельзя использовать, например, такую команду:

 

ftp> mput ch*. txt book

 

где book — имя каталога на удаленном компьютере. Правильный путь — сначала перейти с помощью команды cd в этот удаленный каталог.

 

ftp> cd book ftp> mput ch*.txt

 

To же самое относится и к команде mget.

  • Команды mput и mget (равно как и обычные команды put и get) нельзя использовать для копирования каталога. Их можно применять только для копирования групп файлов. Копирование каталога дает непредсказуемые результаты. Если Вам необходимо передать каталог, создайте архив и передайте этот архив. Как это делать, Вы узнаете ниже.
  • Вы можете обнаружить, что команда mget с универсальными символами подстановки не всегда работает хорошо. Это зависит от того, насколько правильно удаленный FTP-сервер выполнил команду ls.

 




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 372; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.