Э. Сивер, С. Спейнауэр, С. Фиггинс, Дж. П. Хекман - Linux cправочник - 3-е издание (1114666), страница 15
Текст из файла (страница 15)
Каждый из трех флагов (flags) -i, -p и —о имеет свои параметры.ерю90ерюГлава 3. Команды LinuxФлаги—i, —extract [options] [patterns]Извлечь из архива файлы, имена которых совпадают с заданными шаблонами имен (patterns). Каждый шаблонможет содержать специальные символы командного интерпретатора Борна. (Шаблон необходимо заключать вкавычки или экранировать, чтобы интерпретатор не пытался обработать его вместо cpio.) Если не были заданышаблоны, извлекаются все файлы. В процессе извлечения существующие файлы не перезаписываются болеестарыми версиями из архива (обратное достигается заданием параметра —и).—о, —create [options]Поместить в архив файлы, список имен которых поступил со стандартного ввода.—р, —pass-through [options] directoryКопировать файлы в другой каталог (directory) на той жесистеме.
Конечные пути файлов строятся от заданногокаталога.Сравнение допустимых параметровПараметры, доступные для использования с каждым из флагов —i, —о и —р, перечислены ниже. Символ «—» опущен дляупрощения.i: bcdf mnrtsuv В SVCEHMR IFо: Оа сvABL VC HM 0 Fp: Oa d 1muv L VRПараметры-0, —nullСписок файлов завершается нулевым символом, а несимволом новой строки, что позволяет производить операции над файлами, в именах которых содержится символ новой строки.—а, —reset-access-timeСбросить (вернуть старое значение) время последнегодоступа к файлу после прочтения файла.—А, —appendДобавить файлы к существующему архиву (который вэтом случае должен являться дисковым файлом).
Файлархива задается параметром -О или —F.Алфавитный перечень команд—b, —swapОбменивать значения соседних байтов и машинных полуслов в целях межплатформенного преобразования 32битных целых чисел.—В Блочный ввод-вывод, размер блока устанавливаетсяравным 5120 байт на одну запись (по умолчанию 512).—blocksize=sizeУстановить размер блока (blocksize) ввода/вывода равным size x 512 байт.—с Чтение или запись информации из заголовков в видеASCII-символов. Позволяет преодолеть несовместимость при переносе на машину другой архитектуры.—С п, —io-size==rcАналогично —В, но размер блока может быть равен любому положительному целому числу п.—d, —make-directoriesПо необходимости создавать каталоги.—Е file, —pattern-file=/iZeИзвлечь из архива файлы с именами из шаблонов в file.—f, —nonmatchingИзменение правила отбора файлов: обрабатываютсятолько файлы, не совпадающие с перечисленными шаблонами patterns.-F file, —file=fileИспользовать в качестве архива файл file, вместо стандартных потоков ввода (stdin) или вывода (stdout).
Файлможет находиться на другой машине, тогда его имяпредставляется в форме user@hostname:file (часть user®не обязательна).—force-localСчитать, что файл (заданный параметром —F, —I или -О)находится на локальной машине, даже если в именифайла присутствует символ «:».—Н type, —format=typeИспользовать формат type. По умолчанию для извлекаемых файлов принимается формат bin. Допустимые форматы:bin Исполняемый файл.ode Старый (POSIX.1) переносимый формат.91ерю92ерюГлава 3.
Команды LinuxnewcНовый (SVR4) переносимый формат.сгсНовый (SVR4) переносимый формат, учитывающийконтрольную сумму.tarТаг-формат.ustarТаг стандарта POSIX.1 (опознаются также архивы,созданные GNU-версией tar).hpbinИсполняемый файл системы HP-UX (параметр устарел, не используется).hpodcПереносимый формат системы HP-UX.-I fileСчитать файл (file) обрабатываемым архивом. Файл может быть расположен на удаленной машине (см. параметр -F).-k Параметр игнорируется, оставлен для обратной совместимости.-1, —linkСоздавать ссылки на файлы вместо копирования.-L, —dereferenceОбрабатывать файлы по ссылкам.-m, —preserve-modification-timeСохранять дату последнего изменения файла.-M msg, —message=msgОтображать сообщение msg о смене носителя в качествеприглашения перед сменой.
Использовать в сообщениипеременную %d, хранящую численный идентификаторследующего носителя. Режим -М применяется только совместно с —I или —О.-n, —numeric-uid-gidПри отображении содержимого архива печатать идентификатор пользователя и группы в численном виде.—no-absolute-filenamesСоздавать все копируемые в архив файлы относительнотекущего каталога.Алфавитный перечень команд—no-preserve-ownerДелать пользователя, совершающего операцию, владельцем обрабатываемых файлов.
Имеет смысл только дляпривилегированного пользователя.-О fileПеренаправить вывод в файл (file). Файл может находиться на другой машине (см. — F).—only-verify-crcДля архивов CRC-формата вычислять CRC каждого файла, но не выполнять добавление в архив.—quietНе отображать число скопированных блоков.—г Переименование файлов в диалоговом режиме.-R [user][:group], —owner [user][:group]Переопределить пользователя и группу, владеющих файлами.
Имеет смысл только для привилегированного пользователя.—s, —swap-bytesОбменивать значения соседних байт.—S, —swap-half-wordsОбменивать значения соседних машинных полуслов.—sparseПри извлечении файлов из архива или копировании записывать файлы с длинными последовательностями нулей как разреженные.-t, —listВывести содержание ввода (без создания каких-либо файлов). При использовании совместно с —v результат напоминает работу команды Is —1.—u, —unconditionalБезусловное копирование; старые файлы записываютсяповерх более новых, если таковые существуют.—v, —verboseВывести список имен обрабатываемых файлов.-V, —dotОтображать точку (символ) для каждого прочитанногоили записанного файла (это позволяет наблюдать за работой cpio, не загромождая экран информацией).93ерюГлава 3.
Команды Linux94ерю—versionОтобразить информацию о версии программы и завершить работу.ПримерыПри помощи команды find создать список файлов, имена которых заканчиваются на .old. Передать список cpio:find . -name "*.old" - print | cpio -ocBv > /dev/rst8Извлечь из архива с ленты все файлы, имена которых содержат save (подкаталоги создаются по необходимости):cpio -icdv "«save*" < /dev/rst8Переместить дерево каталогов:find .
-depth -print | cpio -padm /mydircppcpp [options] [if He [ of He ]]GNU-версия препроцессора для языка С. Вызывается припервом проходе компиляции любой С-программы с помощью gcc. Результат работы является вводом для следующего прохода компилятора С, и обычно срр вызывает gcc, закончив обработку, ifile и ofile являются, соответственно,именами исходного и получаемого файла для препроцессора; по умолчанию этими файлами являются стандартныйввод и стандартный вывод.Параметры-$ Символ $ в идентификаторах запрещен.Подавление нормального вывода.
Отображаются последовательности макроопределений #define, использованных в исходном файле.-dDАналогично параметру — dM, но исключаются заранеезаданные макроопределения и включаются результатыработы препроцессора.— idirafter dirИскать заголовочные файлы в каталоге dir, если файл ненайден ни в одном из каталогов с включаемыми файлами.Алфавитный перечень команд—imacros f i l eОбрабатывать макроподстановки в файле f i l e до обработки основных исходных файлов.—include f i l eОбрабатывать файл file прежде основного файла.—iprefiK prefixПри добавлении каталогов посредством —iwithprefixпредварять имя каталога префиксом (prefix).—iwithprefix dirДобавить dir к списку каталогов, в которых производится дополнительный поиск, если заголовочный файл небыл найден в обычных путях поиска.
Если задан параметр -iprefix, добавить указанный префикс к dir.—lang-c, -lang-c++, -lang-objc, -lang-objc++Исходный текст написан на языке С, C++, Objective Сили Objective C++, соответственно.-lintОтображать все команды lint в качестве комментариевследующего вида: #pragma lint command.—nostdincПроизводить поиск заголовочных файлов только в указанных, но не в стандартных каталогах поиска.-nostdinc++Запретить поиск в каталогах, содержащих специфичные для C++ заголовочные файлы.—pedanticПредупреждения о возможных ошибках.—pedantic-errorsСчитать ошибкой сомнительные места, в которых команда -pedantic выдавала бы только предупреждение.—traditionalПрепроцессор традиционного С, а не ANSI С .—undefЗапретить определение нестандартных макросов.—A name[=def]Контроль имени пате по значению def, как при определении в директиве #assert.95сррГлава 3. Команды Linux96срр-С Передавать компилятору комментарии (кроме тех, что встроках директив срр).
По умолчанию срр удаляет комментарии в стиле С.—Dname[=def\Определить имя пате как имеющее значение def (поаналогии с директивой #define). Если значение (=def)опущено, пате получает значение 1. Приоритет —Dменьше, чем у параметра —U.—Н Отобразить пути к включаемым файлам (по одному имени в строке) в стандартный поток ошибок.-IdirИскать в каталоге dir включаемые директивой #includeфайлы, имена которых не начинаются с символа «/»,прежде чем искать в стандартных каталогах. Поисквключаемых файлов, имена которых заключены вдвойные кавычки и не начинаются с символа «/», выполняется сначала в текущем каталоге, затем в каталогах, заданных параметром —I, и в последнюю очередь встандартных каталогах.-М [-MG]Подавление нормального вывода.