Kuidas näidata faili printimist märkega stringide käsuga

Kas olete kunagi toimetajale faili avanud, et teada saada, et see sisaldab loetamatu binaarse sisu?

Käsu Linux stringid võimaldavad vaadata ükskõik millises failis inimloetavaid märke.

Käskluse "strings" peamine eesmärk on välja selgitada, millist tüüpi faili see on, aga saate seda teksti teksti saamiseks kasutada ka. Näiteks kui teil on fail, mis on varustatud programmiga, mis salvestab faile kummaski binaarformaadis, võite faili sisestatud teksti eraldamiseks kasutada stringeid.

Näide Stringide käskluse kasutamine

Suurem viis stringide käsu näitamiseks on luua LibreOffice Writeri abil dokument.

Lihtsalt avage LibreOffice Writer ja sisestage mõni tekst ja salvestage see standardse ODT vormingus .

Nüüd avage terminali aken (samal ajal vajutage CTRL, ALT ja T) ja seejärel kasutage käsku cat, et kuvada fail järgmiselt:

kass yourfilename.odt | rohkem

(Asenda yourfilename.odt koos loodud faili nimega)

See, mida näete, on kogu loetamatu teksti sein.

Faili kerimiseks vajutage tühikut. Korrapäraselt kogu failis näete mõnda sisestatud teksti.

String käsu abil saab kuvada ainult need osad, mis on loetavad inimese jaoks.

Selle kõige lihtsamal kujul saate käivitada järgmise käsu:

stringid yourfilename.odt | rohkem

Nagu varem, ilmub teksti seint, kuid ainult tekst, mida saate lugeda inimeseks. Kui sul on õnne, siis näete oma teksti.

Kuid see, mida näete, on võtmeobjekt, on esimesel real:

mimetypeapplication / vnd.oasis.opendocument.text

Me teame, et failitüüp on LibreOffice Writer ODT-fail 2 põhjusel:

  1. Loome faili
  2. Laiendus on .ODT

Kujutage ette, et te ei loonud faili või leidnud faili taastatud kettale ja failil pole laiendit.

Windowsi taastamine nõuab sageli faile, mille nimed on näiteks 0001, 0002, 0003 jt. Asjaolu, et failid taastatakse, on suurepärane, kuid püütakse välja selgitada, millised neist failidest olid õudusunenäod.

Stringide kasutamisel on teil võimalik failitüüpi välja töötada. Teades, et fail on opendocument.text fail, saate seda salvestada ODT laiendusega ja avada selle LibreOffice'i kirjanik.

Kui sa ei teadnud, et ODT-fail on põhiliselt kokkusurutud fail. Kui nimetate yourfilename.odt omafilename.zipile, saate selle avada arhiveerimise tööriistas ja isegi faili lahti lüüa.

Alternatiivsed käitumised

Vaikimisi tagastab stringide käsk failis kõik stringid, kuid saate käitumist vahetada nii, et see tagastab stringi algseeritud, laaditud jaotises faili.

Mida see täpselt tähendab? Keegi ei tundu teada.

On mõttekas eeldada, et kasutate stringe, et proovida või teada saada failitüüpi või otsida konkreetset faili.

Kui käskude stringi käivitamisel vaikimisi käitumise abil ei jõua sa lootust, siis proovige käivitada ühte järgmistest käskudest, et näha, kas see muudab tulemust:

stringid -d teiefilinimi

stringid - data yourfilename

Käsiraamatud näitavad, et ülaltoodud käsk võib aidata vähendada stringidest tagastatud prügi hulka.

Käsku stringi saab seadistada nii, et see toimiks vastupidises suunas, nii et miinus d lüliti on vaikimisi käitumine. Kui see on teie süsteemis, saate kõik andmed tagasi saata, kasutades järgmist käsku:

stringid - teiefilinimi

Vormingu väljund

Saate teksti väljundis kuvada faili nime, mis kuvatakse iga teksti rida kõrval.

Selleks käitage üks järgmistest käskudest:

stringid -f yourfilename

stringid - printimise faili nimi yourfilename

Väljund näeb nüüd välja selline:

yourfilename: tekstiosa

yourfilename: teine ​​tekst

Väljundi osana võite kuvada ka selle asukoha nihke, kus see tekst ilmub faili. Selleks käivitage järgmine käsk:

stringid -o yourfilename

Väljund näeb välja selline:

16573 sinu

17024 tekst

Offset on tegelikult kaheksand kujutise nihe, olenevalt sellest, kui stringid on teie süsteemi jaoks kokku pandud, võib see hõlpsasti ka kuuskant või kümnendkoha välja panna.

Täpseim soovitud nihke saavutamise viis on kasutada järgmisi käsklusi:

stringid -td yourfilename

stringid - teiefilinimi

strings-your yourfile name

Miinus t tähendab tagasimakset ja nihkejada määrab kindlaks järgneva tähemärgi. (st d = kümnend, o = kaheksand, h = hex).

Vaikimisi jookseb string käsu iga uus string uuele reale, kuid võite määrata oma valitud piiritleja. Näiteks toru sümboli ("|") kasutamiseks eraldajana käivitage järgmine käsk:

stringid -s "|" yourfilename

Reguleerige String Limit

Vaikimisi käskude käsk otsib reast nelja prinditavat tähemärki. Saate reguleerida vaikimisi nii, et see ainult tagastaks stringi 8 printimistähist või 12 prinditavat tähemärki.

Selle piiri seadistades saate väljundi kohandada, et saada parim võimalik tulemus. Kui otsite liiga pikka stringi, võite riskida teadmata kasuliku teksti lisamist, kuid liiga lühikeseks muutudes võite lõpuks tulla palju rohkem rämpsu.

Ribalaiuse reguleerimiseks käivitage järgmine käsk:

stringid -n 8 yourfilename

Eespool toodud näites olen muutnud piiri 8-ni.

Võite asendada 8 teie valitud numbriga.

Sama asja tegemiseks võite kasutada ka järgmist käsku:

stringid - bytes = 8 yourfilename

Kaasa tühimärk

Vaikimisi sisaldab stringi käsklus tühikut, näiteks vahelehte või tühikut, prinditavaks tähemärgiks. Seega, kui teil on string, mis loeb "kass istub matt", siis stringi käsk tagastab kogu teksti.

Vaikimisi ei loeta uute rea tähtede ja kandejärjekordadeks printimistähiseid.

Uute joone märkide äratundmiseks stringide saamiseks ja käru tagastab printimiseks märgi jooksev string järgmiselt:

stringid -w yourfilename

Muuda kodeeringut

Stringidele kasutamiseks on olemas 5 kodeerimisvõimalust:

Vaikimisi on 7 bitine bait.

Kodeeringu muutmiseks käivitage järgmine käsk:

stringid - on yourfilename

stringid - encoding = s yourfilename

Ülaltoodud käsu puhul olen määranud vaikimisi s, mis tähendab 7-bitise baiti. Lihtsalt asenda "s" koos oma valitud kodeerimiskirjaga.

Muutke binaarfaili kirjelduse nime

Võite muuta stringide käitumist nii, et see kasutab teist erinevat binaarfailide kirjeldussüsteemi, kui see, mis on teie süsteemis ette nähtud.

See lüliti on ekspertide jaoks üks. Kui teil on veel üks raamatukogu, saate seda teha käsuga järgmine string:

stringid -T bfdname

Lugemisvalikud failist

Kui te üritate iga kord kasutada samu valikuid, siis te ei soovi kõiki käske täpsustada iga kord, kui käivitate käsu, kuna see võtab aega.

Mida saate teha, on luua tekstifail nano abil ja täpsustada selle faili võimalusi.

Terminali käivitamiseks proovige seda järgmiselt:

nano stringsopts

Failis sisestage järgmine tekst:

-f -o -n 3 -s "|"

Salvestage fail vajutades CTRL ja O ning väljumiseks vajutage CTRL ja X.

Nende suvanditega käskude käivitamiseks käivitage järgmine käsk:

Stringid @stringsopts yourfilename

Valikud loetakse faili stringsopts ja peate nägema failinime enne iga stringi, nihe ja "|" eraldajatena.

Abi saamine

Kui soovite lugusid stringide kohta rohkem lugeda, saate abi saamiseks käitada järgmist käsku.

stringid - abi

Alternatiivina võite lugeda ka manuaalilehte:

mees stringid

Uuri välja, millise versiooni stringid sa jooksed

Kasutatud stringide versiooni leidmiseks käivitage üks järgmistest käskudest:

stringid -v

stringid -V

stringid --versioon