Cara Menampilkan File Karakter yang Dapat Dicetak Dengan Perintah String

Pernahkah Anda mencoba membuka file di editor hanya untuk mengetahui bahwa itu berisi konten biner yang tidak dapat dibaca?

Perintah "string" Linux memungkinkan untuk melihat karakter yang dapat dibaca manusia dalam file apa pun.

Tujuan utama menggunakan perintah "string" adalah untuk mencari tahu jenis file apa yang Anda cari tetapi Anda juga dapat menggunakannya untuk mengekstrak teks. Misalnya, jika Anda memiliki file dari program kepemilikan yang menyimpan file dalam format biner yang aneh, Anda dapat menggunakan "string" untuk mengekstrak teks yang Anda masukkan ke dalam file.

Contoh Penggunaan Of The Strings Command

Cara yang bagus untuk menunjukkan kekuatan dari perintah string adalah membuat dokumen menggunakan LibreOffice Writer.

Buka saja LibreOffice Writer dan masukkan beberapa teks lalu simpan dalam format standar ODT .

Sekarang buka jendela terminal (tekan CTRL, ALT dan T pada saat yang sama) dan kemudian gunakan perintah kucing untuk menampilkan file sebagai berikut:

cat yourfilename.odt | lebih

(Ganti yourfilename.odt dengan nama file yang Anda buat)

Apa yang akan Anda lihat adalah seluruh dinding teks yang tidak terbaca.

Tekan spasi untuk menggulir file. Secara sporadis di seluruh file, Anda akan melihat beberapa teks yang telah Anda masukkan.

Perintah string dapat digunakan untuk menampilkan hanya bagian-bagian yang dapat dibaca manusia.

Dalam bentuk yang paling sederhana Anda dapat menjalankan perintah berikut:

string yourfilename.odt | lebih

Seperti sebelumnya, dinding teks akan muncul, tetapi hanya teks yang dapat Anda baca sebagai manusia. Jika Anda beruntung maka Anda akan dapat melihat teks Anda.

Apa yang Anda akan dapat melihat itu adalah kunci, bagaimanapun, adalah pada baris pertama:

mimetypeapplication / vnd.oasis.opendocument.text

Kita tahu bahwa jenis file adalah file ODT LibreOffice Writer karena 2 alasan:

  1. Kami menciptakan file
  2. Ekstensinya adalah .ODT

Bayangkan Anda tidak membuat file atau Anda menemukan file pada disk yang dipulihkan dan file tidak memiliki ekstensi.

Pemulihan Windows sering memulihkan file dengan nama seperti 0001, 0002, 0003, dll. Fakta bahwa file-file itu sudah pulih sangat bagus tetapi mencoba mencari tahu apa jenis file-file itu adalah mimpi buruk.

Dengan menggunakan string, Anda memiliki kesempatan berjuang untuk mengerjakan jenis file. Mengetahui bahwa file adalah file opendocument.text berarti Anda dapat menyimpannya dengan ekstensi ODT dan membukanya di penulis LibreOffice.

Jika Anda tidak menyadari file ODT pada dasarnya adalah file terkompresi. Jika Anda mengubah namafilename.odt menjadi namafile Anda.zip Anda dapat membukanya dalam alat pengarsipan dan bahkan mengekstrak berkasnya.

Perilaku Alternatif

Secara default, perintah string mengembalikan semua string dalam file tetapi Anda dapat mengalihkan perilaku sehingga mengembalikan string dari bagian data yang diinisialisasi dan dimuat dalam file.

Apa artinya ini sebenarnya? Sepertinya tidak ada yang tahu.

Masuk akal untuk mengasumsikan bahwa Anda menggunakan string untuk mencoba dan mencari tahu jenis file atau mencari teks tertentu dalam file.

Jika ketika menjalankan perintah string menggunakan perilaku default, Anda tidak mendapatkan output yang Anda harapkan lalu coba jalankan salah satu dari perintah berikut untuk melihat apakah itu membuat perbedaan:

string -d yourfilename

string - data yourfilename

Halaman manual menyatakan bahwa perintah di atas dapat membantu mengurangi jumlah sampah yang dikembalikan dari string.

Perintah "string" dapat diatur untuk bekerja secara terbalik sehingga switch minus d adalah perilaku default. Jika ini yang terjadi pada sistem Anda maka Anda dapat mengembalikan semua data dengan menggunakan perintah berikut:

string -a yourfilename

Memformat Output

Anda bisa mendapatkan teks di dalam output untuk menampilkan nama file di samping setiap baris teks.

Untuk melakukan ini, jalankan salah satu dari perintah berikut:

string -f yourfilename

string - print-file-name namafile Anda

Outputnya sekarang akan terlihat seperti ini:

yourfilename: sepotong teks

yourfilename: potongan teks lainnya

Sebagai bagian dari output Anda juga dapat menampilkan offset di mana teks itu muncul dalam file. Untuk melakukannya jalankan perintah berikut:

string -o yourfilename

Outputnya akan terlihat seperti ini:

16573 Anda

17024 teks

Offset sebenarnya adalah oktal offset meskipun tergantung pada bagaimana string telah dikompilasi untuk sistem Anda dapat dengan mudah menjadi hex atau desimal offset juga.

Cara yang lebih akurat untuk mendapatkan offset yang Anda inginkan adalah menggunakan perintah berikut:

strings -td yourfilename

string-to yourfilename

string -th yourfilename

Tanda minus berarti mengembalikan offset dan karakter yang mengikuti menentukan jenis offset. (Yaitu d = desimal, o = oktal, h = hex).

Secara default, perintah string mencetak setiap string baru pada baris baru tetapi Anda dapat mengatur pembatas pilihan Anda. Misalnya untuk menggunakan simbol pipa ("|") sebagai pemisah menjalankan perintah berikut:

string -s "|" namafile Anda

Sesuaikan Batas String

Perintah string secara default mencari string dari 4 karakter yang dapat dicetak berturut-turut. Anda dapat menyesuaikan default sehingga hanya mengembalikan string dengan 8 karakter yang dapat dicetak atau 12 karakter yang dapat dicetak.

Dengan menyesuaikan batas ini Anda dapat menyesuaikan output untuk mendapatkan hasil terbaik. Dengan mencari string yang terlalu panjang, Anda berisiko menghilangkan teks yang berguna tetapi dengan membuatnya terlalu pendek, Anda mungkin akan mendapatkan lebih banyak sampah yang dikembalikan.

Untuk menyesuaikan batas string jalankan perintah berikut:

string -n 8 yourfilename

Dalam contoh di atas, saya telah mengubah batas ke 8.

Anda dapat mengganti 8 dengan jumlah pilihan Anda.

Anda juga dapat menggunakan perintah berikut untuk melakukan hal yang sama:

string --bytes = 8 yourfilename

Sertakan Spasi Putih

Secara default, perintah string menyertakan spasi seperti tab atau ruang sebagai karakter yang dapat dicetak. Oleh karena itu jika Anda memiliki string yang berbunyi "kucing duduk di atas matras" maka perintah string akan mengembalikan seluruh teks.

Karakter baris baru dan pengembalian carriage tidak dianggap sebagai karakter yang dapat dicetak secara default.

Untuk mendapatkan string untuk mengenali karakter baris baru dan carriage return sebagai string menjalankan karakter yang dapat dicetak dengan cara berikut:

string -w yourfilename

Ubah Encoding

Ada 5 opsi encoding yang tersedia untuk digunakan dengan string:

Standarnya adalah 7 bit byte.

Untuk mengubah pengkodean jalankan perintah berikut:

string -seperti nama file Anda

string --encoding = s yourfilename

Dalam perintah di atas, saya telah menetapkan default "s" yang berarti 7 bit byte. Cukup ganti "s" dengan huruf encoding pilihan Anda.

Ubah Nama Deskripsi File Biner

Anda dapat mengubah perilaku string sehingga menggunakan pustaka deskriptor file biner yang berbeda selain yang disediakan untuk sistem Anda.

Saklar ini adalah satu untuk para ahli. Jika Anda memiliki perpustakaan lain untuk digunakan, Anda dapat melakukannya dengan menjalankan perintah string berikut:

string -T bfdname

Membaca Pilihan Dari File A

Jika Anda akan menggunakan opsi yang sama setiap kali, maka Anda tidak perlu menentukan semua switch setiap kali Anda menjalankan perintah karena ini membutuhkan waktu.

Apa yang dapat Anda lakukan adalah membuat file teks menggunakan nano dan tentukan opsi di dalam file itu.

Untuk mencoba ini dalam terminal jalankan perintah berikut:

nano stringsopts

Di dalam file, masukkan teks berikut:

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

Simpan file dengan menekan CTRL dan O dan keluar dengan menekan CTRL dan X.

Untuk menjalankan perintah string dengan opsi ini jalankan perintah berikut:

string @stringsopts yourfilename

Pilihannya akan dibaca dari file stringsopts dan Anda akan melihat nama file sebelum setiap string, offset dan "|" sebagai pemisah.

Mendapatkan bantuan

Jika Anda ingin membaca lebih lanjut tentang string, Anda dapat menjalankan perintah berikut untuk mendapatkan bantuan.

string - help

Atau Anda juga dapat membaca halaman manual:

string pria

Cari Tahu Versi String Yang Anda Lari

Untuk menemukan versi string yang Anda jalankan jalankan salah satu dari perintah berikut:

string -v

string -V

string --versi