Разумевање Линук наредбе: Ар

ГНУ ар програм креира , модифицира и извлачи из архива. Архива је једна датотека која садржи збирку других датотека у структури која омогућава да се преузму оригиналне појединачне датотеке (које се зову чланови архиве).

Преглед

Садржај оригиналних датотека, режим (дозволе), временска ознака, власник и група се чувају у архиви и могу се вратити на екстракцију.

ГНУ ар може да одржава архиве чији чланови имају имена било које дужине; међутим, у зависности од тога како је ар конфигуриран на вашем систему, може се наметнути ограничење дужине имена члана за компатибилност са архивским форматима који се одржавају са другим алатима. Ако постоји, ограничење је често 15 карактера (типично за формате везане за а.оут) или 16 карактера (типично за формате повезане са цофф).

ар се сматра бинарном корисношћу, јер се архиве ове врсте најчешће користе као библиотеке са често потребним потпрограмима.

ар креира индекс за симболе дефиниране у релоцатибилним објектним модулима у архиви када одредите модификатор с . Када је креиран, овај индекс се ажурира у архиву кад год измени свој садржај (осим у случају к ажурирања). Архива са таквим индексом убрзава повезивање са библиотеком и омогућава рутине у библиотеци да се позову једни на друге без обзира на њихово пласирање у архиву.

Можете користити нм -с или нм -принт-армап да бисте пописали ову индексну таблицу. Ако у архиви недостаје табела, други облик арл- назива ранлиб се може користити за додавање само табеле.

ГНУ ар је дизајниран да буде компатибилан са два различита објекта. Можете контролисати своју активност помоћу опција командне линије, као што су различите варијанте ар на Уник системима ; или, ако дефинишете јединствену опцију командне линије , можете га контролисати помоћу скрипта који се добија преко стандардног уноса, као што је МРИ `` либрари програм ''.

СИНОПСИС

ар [ -Кс32_64 ] [ - ] п [ мод [ релпос ] [ цоунт ]] архива [ члан ...]

ОПЦИЈЕ

ГНУ ар вам омогућава да у било ком редоследу мешате мод кода операције п и модификатора заставе у оквиру првог аргумента командне линије.

Ако желите, можете започети први аргумент командне линије са дасхом.

П кеилеттер одређује коју операцију треба извршити; то може бити било које од следећег, али морате навести само једну од њих:

д

Избришите модуле из архиве. Наведите имена модула који ће бити избрисани као члан ...; архива је нетакнута ако не наведете датотеке које желите избрисати.

Ако одредите модификатор в , ар листе сваки модул јер је обрисан.

м

Користите ову операцију да бисте померили чланове у архиви.

Уређивање чланова у архиви може утицати на то како су програми повезани користећи библиотеку, ако је симбол дефинисан у више од једног члана.

Ако се не користе модификатори са "м", сви чланови које називате у аргументима чланова премјестили су на крај архива; можете да користите модификатор а , б или и да бисте их померили на одређено место.

стр

Штампајте наведене чланове архиве, у стандардну излазну датотеку. Ако је модификатор в наведен, покажите име члана пре него што копирате његов садржај на стандардни излаз.

Ако не наведете аргументе чланова , одштампају се све датотеке у архиви.

к

Брзо додавање ; Историјски, додајте члану датотеке ... на крај архива , без провере за замјену.

Модификатори а , б и и не утичу на ову операцију; нови чланови се увек налазе на крају архива.

Модификатор в чини ар листу сваку датотеку у прилогу.

Пошто је тачка ове операције брзина, индекс табеле архива не ажурира, чак и ако је већ постојао; можете експлицитно користити ар с или ранлиб да бисте ажурирали индекс таблице симбола.

Међутим, превише различитих система претпоставља да је брзо додавање обнавља индекс, тако да ГНУ ар имплементира "к" као синоним за "р".

р

Убаците чланове датотеке ... у архиву (са заменом ). Ова операција се разликује од к у томе да се сви претходно постојећи чланови бришу ако њихова имена одговарају онима који се додају.

Ако не постоји једна од датотека именована у члану ..., ар приказује поруку о грешци и оставља непопустљиве све постојеће чланове архиве који одговарају том имену.

Подразумевано се нови чланови додају на крај датотеке; али можете да користите један од модификатора а , б или и да бисте захтевали постављање у односу на неке постојеће чланове.

Модификатор в који се користи са овом операцијом изазива линију излаза за сваку датотеку која је уметнута, заједно са једним од слова а или р како би се назначило да ли је датотека додана (ниједан стар члан није избрисан) или замењен.

т

Прикажите таблицу са пописом садржаја архиве или датотекама наведених у члану ... које су присутне у архиви. Обично је приказано само име чланка; ако желите да видите и модове (дозволе), временску ознаку, власника, групу и величину, то можете затражити тако што ћете такође навести модификатор в .

Ако не наведете члана , наведене су све датотеке у архиви.

Ако постоји више од једне датотеке са истим именом (рецимо, фие ) у архиви (рецимо ба ), ар т ба фие наводи само прву инстанцу; да их све видите, морате у комплетном попису тражити - у нашем примеру, ар т ба .

Икс

Екстракт чланова (именовани члан ) из архиве. Можете користити модификатор в са овом операцијом, да бисте захтевали да наведете свако име како га извлачи.

Ако не наведете члана , све датотеке у архиви су извучене.

Неколико модификатора ( мод ) може одмах пратити п кеилеттер, како би навели варијације у понашању операције:

а

Додајте нове датотеке након постојећег члана архиве. Ако користите модификатор а , име постојећег архивског члана мора бити присутно као аргумент релпос , пре спецификације архиве .

б

Додајте нове датотеке пре постојећег члана архиве. Ако користите модификатор б , име постојећег архивског члана мора бити присутно као аргумент релпос , пре спецификације архиве . (исто као и ).

ц

Креирајте архиву. Наведена архива се увек креира ако не постоји, када затражите ажурирање. Али упозорење се издаје ако унапред не одредите да ли очекујете да га креирате, користећи овај модификатор.

ф

Урезивање имена у архиви. ГНУ ар нормално дозвољава имена датотека било које дужине. Ово ће довести до стварања архива које нису компатибилне са изворним програмима на неким системима. Ако је то забрињавајуће, модификатор ф се може користити за скраћивање имена датотека када их ставља у архиву.

и

Убаците нове датотеке пре постојећег члана архиве. Ако користите модификатор и , име постојећег архивског члана мора бити присутно као аргумент релпос , пре спецификације архиве . (исто као и б ).

л

Овај модификатор је прихваћен, али се не користи.

Н

Користи параметар бројања . Ово се користи ако постоји више ставки у архиви са истим именом. Извадите или избришите број примерака датог имена из архиве.

о

Сачувајте оригиналне датуме чланова када их извлачите. Ако не наведете овај модификатор, датотеке које су извучене из архиве потискују се са временом екстракције.

П

Користите име пуног стаза када се подударају имена у архиви. ГНУ ар не може створити архиву с пуним називом путање (таква архива нису жалба за ПОСИКС), али други креатори архиве могу. Ова опција ће узроковати ГНУ ар да одговара именима датотека користећи комплетно име стазе, што може бити погодно када извлачи једну датотеку из архиве коју је направио други алат.

с

Напишите индекс датотеку објекта у архиву или ажурирајте постојећу, чак и ако у архиву не дође до никакве друге измјене. Ову модификаторску заставу можете користити било којом операцијом или самим тим. Трчање на архиву је еквивалентно покретању ранлиба на њему.

С

Немојте генерисати таблицу симбола архива. Ово може убрзати изградњу велике библиотеке у неколико корака. Добијена архива се не може користити са линкером. Да бисте изградили таблицу симбола, морате изоставити модификатор С на последњој извршењу ар-а , или морате покренути ранлиб у архиви.

у

Нормално, ар ... убацује све датотеке наведене у архиву. Ако желите да убаците само оне датотеке које сте листе новије од постојећих чланова истих имена, користите овај модификатор. Модификатор у је дозвољен само за рад р (замени). Конкретно, комбинација ку није допуштена, јер провера временских марки ће изгубити брзину од операције к .

в

Овај модификатор захтева прозирну верзију операције. Многе операције приказују додатне информације , као што су обрађене датотеке, када је додан модификатор в .

В

Овај модификатор приказује број верзије ар .

ар игнорише почетну опцију пере -Кс32_64 , за компатибилност са АИКС-ом. Понашање произведено овом опцијом је подразумевано за ГНУ ар . ар не подржава ниједну од осталих опција -Кс ; нарочито, не подржава -Кс32 који је подразумевани за АИКС ар .

Важно: Користите команду човјека ( % човјек ) да бисте видели како се на вашем рачунару користи команда.