Cara Nampilake Karakter sing Bisa Dicetak Kanthi Perintah Strings

Apa sampeyan tau nyoba mbukak file ing editor mung kanggo mangerteni manawa isi isi binar- unat kasebut ora bisa diwaca?

Prentah Linux "strings" ndadekake bisa ndeleng karakter sing bisa dibaca ing manéka file.

Maksud utama nggunakake printah "strings" yaiku nggarap tipe file apa sing panjenengan tingali nanging sampeyan uga bisa nggunakake aplikasi iku kanggo extract teks. Contone, yen sampeyan duwe file saka program tertutup sing nyimpen file ing format biner aneh sampeyan bisa nggunakake "strings" kanggo extract teks sing sijine menyang file.

Contoh Panggil Perintah Strings

Cara sing paling apik kanggo nduduhake kuwasane printah strings yaiku nggawe dokumen nggunakake LibreOffice Writer.

Cukup mbukak LibreOffice Writer lan ketik teks banjur simpen ana ing format ODT standar .

Saiki mbukak jendhela terminal (pencet CTRL, ALT lan T sakaligus) banjur gunakake perintah kucing kanggo nampilake file kasebut kaya mangkene:

cat yourfilename.odt | luwih akeh

(Ganti yourfilename.odt kanthi jeneng berkas sing digawe)

Apa sing bakal katon yaiku tembok sing ora bisa dibayarke.

Pencet spasi kanggo nggulung file kasebut. Sacoro sacara sporadis ing saindhenging file sampeyan bakal bisa ndeleng sawetara teks sing sampeyan lebokno.

Pangaturan string bisa digunakake kanggo nampilake mung bagean sing bisa diwaca manungsa.

Ing wangun paling gampang sampeyan bisa mbukak printah ing ngisor iki:

strings yourfilename.odt | luwih akeh

Kaya sadurunge, tembok teks bakal katon, nanging mung teks sing bisa diwaca minangka manungsa. Yen sampeyan beruntung sampeyan bakal bisa ndeleng teks sampeyan.

Apa sampeyan bakal bisa ndeleng manawa kunci iku, nanging, ana ing baris pisanan:

mimetypeapplication / vnd.oasis.opendocument.text

Kita sumurup, yen jinis file iku file ODT Writer LibreOffice kanggo 2 alasan:

  1. Kita digawe file
  2. Ekstensi punika .ODT

Mbayangno yen sampeyan ora nggawe file utawa sampeyan nemokake file kasebut ing disk sing pulih lan file kasebut ora duwe ekstensi.

Pamulihan Windows kerep bisa ngobati file kanthi jeneng kaya 0001, 0002, 0003 dll. Kasunyatan manawa file kasebut pulih apik, nanging nyoba kanggo ngowahi apa jinis file kasebut minangka mimpi ngimpi.

Kanthi nggunakake strings sampeyan duwe kesempatan gelut ngolah jinis file. Ngerti manawa file minangka file opendocument.text tegese sampeyan bisa nyimpen karo ekstensi ODT lan mbukak ing writer LibreOffice.

Yen sampeyan ora mangerteni file ODT tegese file sing dikompresi. Yen sampeyan ngowahi jeneng yourfilename.odt menyang yourfilename.zip sampeyan bisa mbukak ing alat pangarsipan lan malah unzip file kasebut.

Perilaku Alternatif

Secara kenceng, pratandha strings ngasilake kabeh senar ing sawijining file, nanging sampeyan bisa ngalih prilaku supaya ngasilake strings saka bagean data diinstal, dimuat ing file.

Apa tegese iki? Ora ana sing weruh.

Prasaja kanggo nganggep yen sampeyan nggunakake strings kanggo nyoba lan nemtokake jinis file utawa kanggo nggoleki teks tartamtu ing file.

Yen nalika nglakokake perintah strings kanthi nggunakake prilaku standar sampeyan ora entuk output sing sampeyan ngarepake banjur nyoba nglakoni salah sijining perintah ing ngisor iki kanggo ndeleng yen ndadekake prabédan:

strings -d yourfilename

strings - data yourfilename

Kaca manual nyatakake yen dhawuhe ing ndhuwur bisa mbantu ngurangi jumlah sampah sing bali saka senar.

Prentah "strings" bisa disetel supaya bisa diuripake supaya saklar minus d minangka prilaku standar. Yen iki kasus ing sistem sampeyan sampeyan bisa bali kabeh data kanthi nggunakake printah ing ngisor iki:

strings -a yourfilename

Formatting Output

Sampeyan bisa njaluk teks ing output kanggo nampilake jeneng file ing saben baris teks.

Kanggo nglakokna iki salah sijining perintah ing ngisor iki:

strings -f yourfilename

strings --print-file-name yourfilename

Output saiki bakal katon kaya iki:

yourfilename: sepotong tulisan

yourfilename: potongan liyane teks

Minangka bagéan saka output sampeyan uga bisa nampilake offset endi tèks kasebut katon ing sawijining file. Kanggo nindakake supaya bisa nglakoke perintah kasebut:

strings -o yourfilename

Output bakal katon kaya iki:

16573 sampeyan

17024 teks

Offset kasebut bener-bener mateni octal sanajan gumantung carane cara-cara strings kanggo sistem sampeyan bisa gampang dadi hex utawa offset desimal uga.

Cara sing luwih akurat kanggo ngimbangi offset sampeyan pengin nggunakake perintah ing ngisor iki:

strings -td yourfilename

strings-to yourfilename

strings -th yourfilename

Ing minus t tegese ngasilake offset lan karakter sing nderek nemtokake jinis offset. (d = desimal, o = oktal, h = hex).

Secara kenceng, pratelan strings prints saben string anyar ing baris anyar nanging sampeyan bisa ngeset pamilik sing dipilih. Contone, nggunakake simbol pipa ("|") minangka pamisah mbukak perintah ing ngisor iki:

strings -s "|" yourfilename

Nyetel Baterei Strip

Pangaturan string kanthi standar katon kanggo senar 4 karakter sing bisa dicetak ing saben baris. Sampeyan bisa nyetel gawan supaya mung ngasilake senar kanthi 8 karakter sing bisa dicithak utawa 12 karakter sing bisa dicithak.

Miturut nyetel watesan iki, sampeyan bisa ngatur output kanggo entuk hasil sing paling apik. Kanthi nggoleki senar sing dawa banget sampeyan nemokake resiko nolak teks sing migunani, nanging kanthi cepet banget, sampeyan bisa uga bisa mungkasi adoh luwih apik.

Kanggo nyetel watesan string nglakoni perintah ing ngisor iki:

strings -n 8 yourfilename

Ing conto ndhuwur aku wis ngowahi watesan kanggo 8.

Sampeyan bisa ngganti 8 kanthi nomer pilihan sampeyan.

Sampeyan uga bisa nggunakake printah ing ngisor iki kanggo nindakake bab sing padha:

strings --bytes = 8 yourfilename

Kalebu Whitespace

Secara default, printah strings kalebu spasi kayata tab utawa spasi minangka karakter sing bisa dicetak. Mulane yen sampeyan duwe senar sing diwaca minangka "kucing lungguh ing mat", banjur print baris bakal bali kabeh teks.

Karakter garis anyar lan pangunggahan karangan ora dianggep dadi karakter sing bisa dicetak kanthi gawan.

Kanggo njaluk strings kanggo ngenali karakter garis anyar lan carriage returns minangka karakter sing bisa dicetak, bisa didelok cara ing ngisor iki:

strings -w yourfilename

Ngganti Encoding

Ana 5 opsi enkoding sing kasedhiya kanggo nggunakake strings:

Default punika 7 bit byte.

Kanggo ngganti enkoding mulihake perintah kasebut:

strings -es yourfilename

strings --encoding = s yourfilename

Ing print ing ndhuwur, aku nemtokake default "s" sing artine 7 bit byte. Cukup ngganti "s" kanthi huruf pengkodean sing dipilih.

Ngganti Jeneng binar Gambar

Sampeyan bisa ngganti prilaku senar supaya bisa nggunakake perpustakaan descriptor file biner sing beda tinimbang sing diwenehake kanggo sistem sampeyan.

Switch iki minangka salah siji ahli. Yen sampeyan duwe pustaka liya kanggo nggunakake, sampeyan bisa nindakake kanthi nggunakake perintah string ing ngisor iki:

strings -T bfdname

Pilihan Reading Saka Gambar

Yen sampeyan arep nggunakake opsi sing padha saben wektu sampeyan ora pengin kudu nemtokake kabeh switch saben wektu sampeyan mbukak perintah kasebut amarga butuh wektu.

Apa sampeyan bisa nggawe nggawe file teks nggunakake nano lan nemtokake pilihan ing file kasebut.

Kanggo nyoba metu ing terminal, nglakoni perintah kasebut:

nano stringsopts

Ing file ketik teks ing ngisor iki:

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

Simpen file kanthi mencet CTRL lan O banjur metu kanthi mencet CTRL lan X.

Kanggo nglakokaké perintah kasebut nganggo opsi iki, nglakokaké printah ing ngisor iki:

strings @stringsopts yourfilename

Pilihan bakal dibaca saka file stringsopts lan sampeyan kudu ndeleng jeneng file sadurunge saben string, offset lan "|" minangka pemisah.

Njupuk Bantuan

Yen sampeyan pengin maca liyane babagan strings sampeyan bisa nglakokake perintah ing ngisor iki kanggo njaluk bantuan.

strings --help

Utawa sampeyan uga bisa maca kaca manual:

strings wong

Nggoleki Versi Versi Strings Sampeyan Running

Kanggo nemokake versi senar sing mlaku sampeyan bisa mbukak salah sawijining perintah ing ngisor iki:

strings -v

strings -V

strings --version