Unix Man (Справочное руководство)


CPIO(1) - часть 2


/p>

Если в процессе записи на специальное символьное устройство (опция -o) или чтения с него (опция -i) кончился физический носитель (например, дискета), команда cpio выводит сообщение:

If you want to go on, type device/file name when ready.

Чтобы продолжить, Вы должны заменить носитель и ввести имя специального символьного устройства (например, /dev/rdsk/fd) и символ возврат_каретки. Можно продолжить, указав для cpio другое устройство. Например, если Вы имеете два дисковода для гибких дисков, можно указывать их по очереди, чтобы cpio выводил на другой дисковод, пока Вы будете менять дискету. (Один символ возврат_каретки заставляет cpio окончить работу.)

ПРИМЕРЫ

  1. Если стандартный ввод поступает в cpio -o через канал, то команда cpio группирует файлы, так что они могут быть направлены (>) в один файл (../newfile). Вместо ls Вы можете использовать команды find, echo, cat, и т.д., чтобы подать список имен в cpio. Можно назначить вывод на устройство, а не в файл.

    ls | cpio -o >../newfile

  2. Команда cpio -i использует выходной файл cpio -o (в данном примере направленный через канал вывод команды cat), выбирает оттуда те файлы, которые соответствуют шаблонам (memo/a1, memo/b*), создает каталоги, если это нужно (опция -d), и помещает файлы в соответствующие каталоги. Если шаблоны не указаны, то все файлы из newfile будут размещены в текущем каталоге.

    cat newfile | cpio -id "memo/a1" "memo/b*"

  3. Команда cpio -p берет имена файлов и копирует эти файлы в другой каталог (в примере newdir) на этом же компьютере или заводит на них еще одну ссылку (опция -l). Опция -d позволяет создавать новые каталоги в случае необходимости. Опция -m предписывает сохранить время последней модификации. (Очень важно использовать опцию -depth в команде find при генерации маршрутных имен для cpio. Эта опция заставит find перечислять файлы, содержащиеся в каталоге, раньше чем сам каталог и исключит ситуацию, когда cpio скопирует каталог, в который по правам доступа нельзя писать, вместе с этим правом, а затем не сможет перенести в него файлы.)

    find . -depth -print | cpio -pdlmv newdir

СМ. ТАКЖЕ


, , , .

в Справочнике программиста.

ПРИМЕЧАНИЯ


Маршрутные имена обрезаются до 256 символов.

Только суперпользователь может копировать специальные файлы.

Количество блоков сообщается в предположении, что размер блока равен 512 байт.




Начало  Назад  Вперед



Книжный магазин