Како приказати знаке за штампање датотеке са командом Стрингс

Да ли сте икада покушали да отворите датотеку у уреднику само да бисте сазнали да садржи нечитљив бинарни садржај?

Команда Линук "стрингс" омогућава приказ људских читљивих знакова унутар било које датотеке.

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

Пример употребе команди струнова

Одличан начин да демонстрирате моћ указа струне је да креирате документ користећи ЛибреОффице Вритер.

Једноставно отворите ЛибреОффице Вритер и унесите неки текст, а затим га сачувајте у стандардном формату ОДТ .

Сада отворите прозор терминала (истовремено притисните ЦТРЛ, АЛТ и Т), а затим користите команду цат да бисте приказали датотеку на следећи начин:

мачка иоурфиленаме.одт | више

(Замените иоурфиленаме.одт са именом датотеке коју сте креирали)

Оно што ћете видети је читав зид нечитљивог текста.

Притисните размакницу да бисте се померали кроз датотеку. Спорадично кроз целу датотеку видећете нека од текстова који сте унели.

Команда стрингс може се користити за приказивање само делова који су људски читљиви.

У најједноставнијем облику можете покренути следећу наредбу:

стрингс иоурфиленаме.одт | више

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

Међутим, оно што ћете моћи да видите, кључна је на првој линији:

миметипеапплицатион / внд.оасис.опендоцумент.тект

Знамо да је тип фајла датотека ОДБ-а ЛибреОффице Вритер из 2 разлога:

  1. Створили смо датотеку
  2. Продужетак је .ОДТ

Замислите да нисте направили датотеку или нисте пронашли датотеку на обновљеном диску, а датотека није имала проширење.

Опоравак оперативног система Виндовс често би обнављао датотеке са именима као што су 0001, 0002, 0003 итд. Чињеница да су датотеке обновљене је одлично, али покушавају да открију које су врсте тих датотека биле ноћна мора.

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

У случају да нисте били свјесни да је датотека ОДТ у основи компримирана датотека. Ако преименовате иоурфиленаме.одт на иоурфиленаме.зип можете га отворити у алатку за архивирање па чак и одштампати датотеку.

Алтернативе Бехавиорс

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

Шта то тачно значи? Изгледа да нико не зна.

Има смисла претпоставити да користите низове да бисте покушали или сазнати тип датотеке или тражити одређени текст у датотеци.

Ако користите командну линију користећи подразумевано понашање, не добијате излаз за који сте се надали да покушате да покренете неку од наредних команди да бисте видели да ли то чини разлику:

стринг -д иоурфиленаме

стринг -дата иоурфиленаме

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

Команда "стрингс" се може подесити да ради обратно, тако да је минус д прекидач подразумевано понашање. Ако је то случај на вашем систему, можете вратити све податке помоћу следеће наредбе:

стринг-а иоурфиленаме

Форматирање излаза

Можете добити текст унутар излаза да бисте приказали име датотеке поред сваке линије текста.

Да бисте то урадили покрените једну од следећих наредби:

стринг -ф иоурфиленаме

стринг -принт-филе-наме иоурфиленаме

Излаз ће сада изгледати овако:

иоурфиленаме: текст текста

иоурфиленаме: други текст

Као део излаза можете такође приказати оффсет гдје се тај текст појављује у датотеци. Да бисте то учинили, покрените следећу команду:

стринг-о иоурфиленаме

Излаз ће изгледати овако:

16573 ваш

17024 текст

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

Тачнији начин добијања оффсет-а је да користите следеће наредбе:

стрингови -тд иоурфиленаме

стринг-то иоурфиленаме

стринг-а иоурфиленаме

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

Подразумевано, наредба стрингова штампа сваки нови низ на новој линији, али можете подесити ограничење по вашем избору. На примјер, за кориштење симбола цијеви ("|"), док је ограничитељ покренуо сљедећу команду:

стрингови -с "|" иоурфиленаме

Прилагодите гранични низ

Команда стрингова подразумевано тражи низ од четири броја за штампање у низу. Можете подесити подразумевано тако да он враћа само низ са 8 знакова за штампање или 12 знакова за штампање.

Прилагођавањем овог ограничења можете прилагодити излаз како бисте добили најбољи могући резултат. Ако тражите низ који је предугачак, ризикујете испуштање корисног текста, али ако то буде прекратко, можда ћете завршити са много више нежељеног враћања.

Да бисте подесили ограничење стринга, покрените следећу команду:

стринг -н 8 иоурфиленаме

У претходном примеру промијенио сам лимит на 8.

Можете заменити 8 са бројем по вашем избору.

Такође можете користити следећу наредбу:

стрингови --битес = 8 иоурфиленаме

Укључи белине

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

Нови знакови линије и повратак за превоз се не сматрају знаком за штампање подразумевано.

Да бисте добили низове да препознају нове линијске знакове и повратак кола као знак за штампање, покрените низове на следећи начин:

стринг -в иоурфиленаме

Промените Енцодинг

На располагању су 5 опција за кодирање са жицама:

Подразумевана вредност је 7 битних бајтова.

Да бисте променили кодирање, покрените следећу команду:

стрингови - су иоурфиленаме

стрингови - енцодинг = с иоурфиленаме

У горњој команди, ја сам одредио подразумевани "с" што значи 7-битни бајт. Једноставно замените "с" са словом за кодирање по вашем избору.

Промените име бинарног фајла

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

Овај прекидач је један за стручњаке. Ако имате другу библиотеку коју можете користити онда то можете урадити тако што ћете покренути сљедећу наредбу:

стринг -Т бфднаме

Опције читања из датотеке

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

Оно што можете учинити је да креирате текстуалну датотеку користећи нано и наведите опције унутар те датотеке.

Да бисте пробали ово у оквиру терминала покрените следећу команду:

нано стрингсоптс

У фајлу унесите следећи текст:

-ф -о -н 3 -с "|"

Сачувајте датотеку притиском на ЦТРЛ и О и изађите притиском на ЦТРЛ и Кс.

Да бисте покренули команде низа са овим опцијама покрените следећу команду:

стрингс @стрингсоптс иоурфиленаме

Опције ће се читати из стрингсоптс фајла и требали бисте видети име датотеке прије сваког стринга, оффсет и "|" као сепаратор.

Добијање помоћи

Ако желите да прочитате више о низовима, можете покренути следећу команду да бисте добили помоћ.

стрингови - помоћ

Алтернативно, такође можете прочитати страницу са упутствима:

човече

Сазнајте која је верзија низа које трчите

Да бисте пронашли верзију низа које покрећете покрените једну од следећих наредби:

стринг -в

стрингови -В

стрингови - верзија