Satrlari buyrug'i bilan faylning chop qilinadigan belgilarini ko'rsatish

Hech bir faylni faqat tahrirlovchi ikkilik kontent mavjudligini bilish uchun ochishga harakat qildingizmi?

Linux "strings" komandasi har qanday faylda inson tomonidan o'qiladigan harflarni ko'rish imkonini beradi.

"Strings" buyrug'idan foydalanishning asosiy maqsadi siz ko'rib turgan qanday fayl turini ishlab chiqishdan iborat, ammo uni matndan ajratish uchun ham ishlatishingiz mumkin. Misol uchun, fayllarni g'aroyib ikkilik formatda saqlaydigan maxsus dasturdan faylingiz bo'lsa, siz faylga kiritgan matnni chiqarish uchun "strings" dan foydalanishingiz mumkin.

Buyruqlar satrining namunasi

Buyruqlarning kuchini ko'rsatishning ajoyib usuli LibreOffice Writer yordamida hujjat yaratishdir.

Faqatgina LibreOffice Writer-ni oching va matnni kiriting va uni standart ODT formatida saqlang.

Endi terminal oynasini oching (CTRL, ALT va T tugmalarini bir vaqtning o'zida bosing) va keyin faylni quyidagi tarzda ko'rsatish uchun mushuk buyrug'ini ishlating:

cat yourfilename.odt | Ko'proq

(O'zingizning fayl nomini o'zgartirib, o'zingiz yaratgan fayl nomi bilan o'zgartiring)

Ko'rib turganingizdek, o'qimaydigan matnning butun devori.

Fayl bo'ylab harakatlanish uchun bo'sh joy tugmasini bosing. Faoliyat davomida siz kiritgan ba'zi matnlarni ko'rasiz.

Buyruq buyrug'i odamlarni o'qilishi mumkin bo'lgan qismlarni ko'rsatish uchun ishlatilishi mumkin.

Eng oddiy shaklda quyidagi buyruqni ishga tushirishingiz mumkin:

strings yourfilename.odt | Ko'proq

Avvalgidek, matnning bir devori paydo bo'ladi, faqat inson sifatida o'qiy oladigan matn. Agar omadingiz bo'lsa, matningizni ko'rishingiz mumkin.

Bu kalitning nima ekanligini bilib olishingiz mumkin, ammo birinchi satrda:

mimetypeapplication / vnd.oasis.opendocument.text

Bilamizki, fayl turi LibreOffice Writer ODT fayli 2 sababga ko'ra:

  1. Biz faylni yaratdik
  2. Kengaytmani .ODT

Tasavvur qiling, faylni yaratmadingiz yoki faylni tiklangan diskda topdingiz va fayl kengaytirilmagan.

Windows qutqarish tez-tez fayllarni 0001, 0002, 0003 va hokazo. Kabi nomlar bilan saqlab qoladi. Fayllarning tiklanishi juda yaxshi, lekin u fayllarning turlari qandaydir bir kabus bo'lishini bilishga harakat qilmoqda.

Satrlarni ishlatib, fayl turini ishlab chiqish uchun jang qilish imkoniyati mavjud. Agar faylning opendocument.text fayl ekanligini bilsangiz, uni ODT kengaytmasi bilan saqlashingiz va LibreOffice yozuvchisida ochishingiz mumkin.

Agar siz ODT faylini bilmasangiz asosan siqilgan fayl. Yourfilename.odt faylini yourfilename.zip nomini o'zgartirsangiz, uni arxivlash vositasida ochib, hatto faylni ochishingiz mumkin.

Shu bilan bir qatorda xulq

Odatiy bo'lib, satrlari buyrug'i fayl ichidagi barcha satrlarni qaytaradi, lekin xatti-harakatni o'zgartirishi mumkin, shunday qilib faylda boshlang'ich, yuklangan ma'lumot qismlaridan satrlarni qaytaradi.

Bu nimani anglatadi? Hech kim bilmaydi.

Sinash va fayl turini topish yoki faylda muayyan matnni izlash uchun satrlarni ishlatmoqchisiz.

Standart xatti-harakatlaridan foydalangan holda buyruqlarni ishlatishda siz chiqadigan chiqishni qabul qilmasangiz, unda quyidagi buyruqlar birini bajarishga harakat qiling:

strings -d sizfilename

satrlar - sizning fayl nomi

Qo'llanma sahifasida yuqoridagi buyruqlar satrlardan qaytarilgan axlat miqdori kamaytirilishiga yordam berishi mumkin.

"Strings" buyrug'i minus d kaliti odatiy xatti-harakat qilib, teskari ishlash uchun o'rnatilishi mumkin. Agar tizimingizda shunday bo'lsa, undagi barcha ma'lumotlarni quyidagi buyruq yordamida qaytarishingiz mumkin:

satrlar - sizning faylingiz

Chiqish formatlash

Matnning har bir satrining yonida joylashgan fayl nomini ko'rsatish uchun chiqindagi matnni olishingiz mumkin.

Buni amalga oshirish uchun quyidagi buyruqlar birini bajaring:

satrlari -f fayli nomi

strings - sizning fayl-nomingiz yourfilename

Chiqish endi shunday bo'ladi:

yourfilename: matnning bir qismi

yourfilename: matnning yana bir qismi

Chiqishning bir qismi sifatida siz ushbu matnning faylda qaerda paydo bo'lishini ham ko'rsatishingiz mumkin. Buning uchun quyidagi buyruqni bajaring:

satrlari - sizning faylingiz

Chiqib chiqishi quyidagi kabi ko'rinadi:

16573 sizning

17024 ta matn

Offset aslida sakkizinchi ofsetdir, ammo sistemangiz uchun qanday strings tuzilganiga qarab, osongina ohang yoki o'nli ofset bo'lishi mumkin.

Kerakli ofsetni olishning aniq usuli quyidagi buyruqlardan foydalanish:

strings - sizning fayl nomi

strings-sizning faylingiz uchun

strings-sizning fayl nomi

Manfiy t - offsetni qaytaradi va quyidagi belgilar offset turini belgilaydi. (Ya'ni, d = kasr, u = sektsiya, h = hex).

Sukut bo'yicha buyruq buyrug'i har bir yangi satrni yangi qatorga yozib qo'yadi, lekin siz tanlagan chegarani belgilashingiz mumkin. Misol uchun, chegarani belgilash uchun quyidagi buyruqni ishga tushirish uchun trubka belgisini ("|") ishlatish kerak:

strings -s "|" Sizning fayl nomi

String chegarasini belgilang

Sukut bo'yicha satrlari buyrug'i ketma-ketlikda 4 ta bosib chiqariladigan belgilar majmuasini izlaydi. Standart sifatida sozlashingiz mumkin, shunday qilib faqat 8 bosib chiqariladigan belgilar yoki 12 ta bosib chiqariladigan belgilar bilan mag'lubiyatni qaytaradi.

Ushbu limitni sozlash bilan siz eng yaxshi natijaga erishish uchun chiqishni sozlashingiz mumkin. Juda uzoq bo'lgan mag'lubiyatni qidirib, siz foydali matnni olib tashlashni xavf ostiga qo'yasiz, lekin juda qisqa qilib, siz yana juda noaniq qaytib kelishi mumkin.

String chegarasini belgilash uchun quyidagi buyruqni bajaring:

strings -n 8 yourfilename

Yuqoridagi misolda limiti 8 ga o'zgartirdim.

8-ni siz tanlagan raqam bilan o'zgartirishi mumkin.

Xuddi shu narsani bajarish uchun quyidagi buyruqni ishlatishingiz mumkin:

satrlari - bayt = 8 yourfilename

Bo'shliqlarni o'z ichiga olgan

Odatiy bo'lib, satrlari buyrug'i bo'sh joy yoki bo'sh joy kabi chop etish mumkin bo'lgan belgini o'z ichiga oladi. Shuning uchun, agar sizda "mushuk kiyikka o'tirdi" deb yozilgan satr mavjud bo'lsa, strings buyrug'i barcha matnni qaytaradi.

Yangi chiziqli belgilar va satrlarni qaytarish sukut bo'yicha chop qilinadigan belgilar sifatida baholanmaydi.

Yangi qator belgilarini va satrlarni qaytarib olish uchun satrlarni bosib chiqarish mumkin bo'lgan belgilar qatoriga quyidagi tarzda kiritish mumkin:

strings -w sizfilename

Kodlashni o'zgartirish

Belgilar bilan ishlash uchun 5 ta kodlash variantlari mavjud:

Asl qiymati 7 bit bayt.

Kodlashni o'zgartirish uchun quyidagi buyruqni bajaring:

satrlari - sizning fayl nomingiz

strings - kodlash = s yourfilename

Yuqoridagi buyruqda men 7 bit bitni bildiradigan "s" ni ko'rsatdim. Siz tanlagan kodlash harfini o'zgartiring.

Ikkilanuvchi fayl ta'rifi nomi o'zgartirilsin

Siz o'zingizning tizimingiz uchun taqdim etilganidan tashqari boshqa ikkilik fayl identifikatori kutubxonasidan foydalanadigan satrlarning xatti-harakatlarini o'zgartirishingiz mumkin.

Ushbu kalit ekspertlar uchun birdir. Agar sizda ishlatadigan boshqa kutubxonangiz bo'lsa, quyidagi buyruqlarni bajarish buyrug'ini bajarishingiz mumkin:

satrlar -T bfdname

Fayldan o'qish parametrlari

Har safar bir xil variantlardan foydalanmoqchi bo'lsangiz, har safar buyruqni ishga tushirganingizda hamma kalitlarni belgilashni xohlamaysiz, chunki vaqt talab etiladi.

Siz nima qila olasiz? Nano yordamida matnli fayl yaratish va ushbu fayl ichidagi imkoniyatlari belgilash.

Buni terminali ichida sinash uchun quyidagi buyruqni bajaring:

nano stringsopts

Faylda quyidagi matnni kiriting:

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

CTRL va O ni bosib faylni saqlang va CTRL va X tugmalarini bosib chiqishingiz mumkin.

Ushbu optsiyalar yordamida buyruqlarni ishlatish uchun quyidagi buyruqni bajaring:

strings @stringsopts sizfilename

Tanlovlar fayl stringsopts dan o'qiladi va siz har bir mag'lubiyatdan oldingi fayl nomi, ofset va "|" ajratuvchi sifatida.

Yordam olish

Agar siz strings haqida qo'shimcha ma'lumot olishni istasangiz, yordam olish uchun quyidagi buyruqni ishga tushirishingiz mumkin.

satrlar - yordam

Shu bilan bir qatorda qo'lda sahifani ham o'qishingiz mumkin:

insonparvarligi

Ishlayotgan qatorlar qaysi versiyasini topish

Ishlayotgan satrlari versiyasini topish uchun quyidagi buyruqlardan birini bajaring:

strings -v

strings -V

satrlar - qaytish