Kuinka näyttää tiedoston tulostettavia merkkejä Strings-komennolla

Oletko koskaan yrittänyt avata tiedoston vain editorissa sen selvittämiseksi, että siinä on lukematon binaaritiedosto ?

Linuxin "merkkijono" -komennolla on mahdollista tarkastella minkä tahansa tiedoston ihmisen luettavia merkkejä.

Päätarkoitus käyttää "merkkijono" -komentoa on selvittää, minkä tyyppistä tiedostoa se katselet, mutta voit myös käyttää sitä tekstin poistamiseen. Jos esimerkiksi sinulla on tiedosto omasta ohjelmistosta, joka tallentaa tiedostoja outo binäärimuotoon, voit käyttää "merkkijonoja" poistamaan tiedosto, jonka syötit tiedostoon.

Esimerkki Strings-komennon käytöstä

Loistava tapa osoittaa merkkijono-komennon teho on luoda asiakirja käyttämällä LibreOffice Writeria.

Avaa vain LibreOffice Writer ja anna teksti ja tallenna se sitten vakiomuotoiseen ODT-muotoon .

Avaa nyt pääteikkuna (paina CTRL, ALT ja T samaan aikaan) ja käytä sitten kissa-komentoa näyttämään tiedoston seuraavasti:

cat yourfilename.odt | lisää

(Korvaa omafilename.odt luomanasi tiedoston nimi)

Mitä näet on koko seinämä, joka on lukukelvoton teksti.

Selaa tiedostoa välilyönnillä. Harvaan koko tiedostoon näet joitain kirjoittamasi tekstiä.

Strings-komentoa voidaan käyttää vain sellaisten osien lukemiseen, jotka ovat luettavia.

Yksinkertaisimmassa muodossaan voit suorittaa seuraavan komennon:

strings yourfilename.odt | lisää

Kuten aiemmin, tekstin seinä tulee näkyviin, mutta vain tekstiä, jota voit lukea ihmisenä. Jos olet onnekas, voit nähdä tekstisi.

Se, mitä pystyt näkemään, on kuitenkin avainasemassa:

mimetypeapplication / vnd.oasis.opendocument.text

Tiedämme, että tiedostotyyppi on LibreOffice Writer ODT -tiedosto kahdesta syystä:

  1. Luotiimme tiedoston
  2. Laajennus on .ODT

Kuvittele, ettet ole luonut tiedostoa tai löysit tiedoston levyltä, eikä tiedostolla ollut laajennusta.

Windowsin palauttaminen palauttaisi usein tiedostoja, joiden nimet olivat esimerkiksi 0001, 0002, 0003 jne. Tiedostojen palauttaminen oli hienoa, mutta yritettiin selvittää, millaisia ​​tiedostoja kyseiset tiedostot olisivat painajainen.

Käyttämällä merkkijonoja sinulla on taistelupotentiaalia selvittää tiedostotyyppi. Tietäen, että tiedosto on opendocument.text-tiedosto, voit tallentaa sen ODT-laajennuksella ja avata sen LibreOffice-kirjaimella.

Jos et tiennyt, ODT-tiedosto on pohjimmiltaan pakattu tiedosto. Jos nimetät filename.odt uudelleen nimesi filename.zip: iin, voit avata sen arkistointityökalulla ja jopa purkaa tiedoston.

Vaihtoehtoiset käyttäytymiset

Oletuksena merkkijono komento palauttaa kaikki tiedoston sisällä olevat jonoon, mutta voit vaihtaa käyttäytymistä niin, että se palauttaa tiedoston alustetuista, ladatusta tietosiosista.

Mitä tämä tarkoittaa tarkalleen? Kukaan ei näytä tietävän.

On järkevää olettaa, että käytät merkkijonoja yrittääksesi joko selvittää tiedostotyypin tai etsiä tiettyä tekstiä tiedostossa.

Jos suoritettaessa merkkijonokomentoa oletuskäyttäytössä et saa toivottua tuottoa, yritä suorittaa jokin seuraavista komennoista nähdäksesi, onko se eroa:

merkkijonot -d profiilinimesi

merkkijonot --tietokentänimi

Manuaalinen sivu kertoo, että yllä mainittu komento voi auttaa vähentämään merkkijonoista palautettua roskat määrää.

"Kielet" -komento voidaan asettaa toimimaan päinvastoin niin, että miinus d-kytkin on oletustoiminta. Jos näin on järjestelmässäsi, voit palauttaa kaikki tiedot käyttämällä seuraavaa komentoa:

strings -a oma profiilisi nimi

Tulosteiden muotoilu

Voit saada tekstiä lähdössä näyttämään tiedoston nimen jokaisen tekstirivin vieressä.

Voit tehdä tämän jommallakummalla seuraavista komennoista:

merkkijonot -f -nimesi

merkkijonot --print-tiedostonimi sinunfilename

Lähtö näyttää nyt jotain näin:

sinunfilenimi: teksti

sinunfilenimi: toinen kappale tekstiä

Osana tuotosta voit myös näyttää, missä tiedosto näkyy tiedostossa. Voit tehdä niin suorittaa seuraavan komennon:

strings -o omaan profiilisi nimi

Tuotos näyttää jotain tällaiselta:

16573 teidän

17024 tekstiä

Offset on itse asiassa oktaalinen offset vaikka riippuen siitä, miten jouset on koottu järjestelmään se voisi helposti olla heksadesimaalinen tai desimaali offset samoin.

Tarkempi tapa saada haluamasi offset on käyttää seuraavia komentoja:

strings -td sinunfilename

merkkijonoja - sinun nimesi

merkkijonoja - sinun nimesi

Miinus t tarkoittaa palauttaa siirtymän ja seuraava merkki määrittää offset-tyypin. (d = desimaali, o = oktaali, h = kuusi).

Oletusarvona merkkijono komento tulostaa jokaisen uuden merkkijonon uudelle riville, mutta voit asettaa haluamasi rajauksen. Esimerkiksi rajamerkin ("|") käyttämiseksi käytä seuraavaa komentoa:

jouset -s "|" yourfilename

Säädä merkkijonon raja

Oletusarvona merkkijonot -komento etsii peräkkäin 4 tulostettavia merkkejä. Voit säätää oletusarvoa siten, että se palauttaa vain merkkijonon, jossa on 8 tulostettavia merkkejä tai 12 tulostettavia merkkejä.

Säätämällä tätä rajaa voit räätälöidä tuotoksen saadaksesi parhaan mahdollisen tuloksen. Etsimällä merkkijono, joka on liian pitkä, vaarana on jättää hyödyllinen teksti, mutta tekemällä siitä liian lyhyt saatat päätyä paljon enemmän roskakoriin.

Säädä merkkijonoa ajetaan seuraava komento:

merkkijonot -n 8 profiilinimesi

Yllä olevassa esimerkissä olen muuttanut rajan arvoon 8.

Voit korvata 8 valitsemallasi numerolla.

Voit myös käyttää seuraavaa komentoa tekemällä sama asia:

strings --bytes = 8 profiilinimesi

Sisällytä välilyönti

Oletusarvon mukaan merkkijonokomento sisältää välilyönnin, kuten välilehden tai tilan, tulostettavana merkkinä. Siksi, jos sinulla on merkkijono, joka lukee "kissa istui matolla", merkkijono komento palaisi koko tekstin.

Uusia viivojen merkkejä ja kuljetustuloksia ei oletuksena ole tulostettavia merkkejä.

Jos haluat saada merkkijonoja tunnistamaan uudet rivin merkit ja kelkan palautus tulostettavana merkkijonona, käytä merkkijonoja seuraavasti:

merkkijonot -w-profiilisi nimi

Muuta koodausta

Käytettävissä on 5 koodausvaihtoehtoa, jotka on tarkoitettu käytettäviksi jonoilla:

Oletusarvo on 7 bitin tavu.

Voit muuttaa koodausta suorittamalla seuraavan komennon:

merkkijonot - sinun nimesi

strings --encoding = s profiilisi nimi

Yllä olevassa komennossa olen määritellyt oletusarvon "s", mikä tarkoittaa 7 bitin tavua. Korvaa vain "s" valitsemallasi koodausmerkillä.

Muuta binääritiedoston nimi

Voit muokata merkkijonojen käyttäytymistä siten, että se käyttää muuta binääriasiakirjakirjastoa kuin järjestelmääsi varten.

Tämä kytkin on yksi asiantuntijoista. Jos käytössäsi on toinen kirjasto, voit tehdä sen käyttämällä seuraavaa merkkijono-komentoa:

merkkijonot -T bfdname

Lukemisasetukset tiedostosta

Jos aiot käyttää samoja vaihtoehtoja joka kerta, sinun ei tarvitse määrittää kaikkia kytkimiä aina, kun suoritat komennon, koska se vie aikaa.

Voit tehdä tekstitiedoston luomalla nanoa ja määrittämällä kyseisen tiedoston asetukset.

Jotta voisit kokeilla tämän päätelaitteen, suorita seuraava komento:

nano-stringsoptejä

Kirjoita tiedostossa seuraava teksti:

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

Tallenna tiedosto painamalla CTRL ja O ja poistu painamalla CTRL ja X.

Voit käyttää merkkijono-komentoja näillä asetuksilla suorita seuraava komento:

strings @stringsopts sinunfilename

Vaihtoehdot luetaan tiedostojen stringsopteistä ja sinun pitäisi nähdä filename ennen jokaista merkkijonoa, offsetia ja "|" erottimena.

Saada apua

Jos haluat lukea enemmän merkkijonoista, voit avata seuraavan ohjeen.

merkkijonoja --helpp

Vaihtoehtoisesti voit lukea manuaalisen sivun:

miehen jouset

Selvitä, mikä versio kielistä, joita käytät

Jotta voit etsiä käyttämäsi merkkijonojen versiota, toimi jokin seuraavista komennoista:

strings -v

jouset -V

merkkijonot --versio