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:
- Kami menciptakan file
- 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:
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: 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: Outputnya sekarang akan terlihat seperti ini: Sebagai bagian dari output Anda juga dapat menampilkan offset di mana teks itu muncul dalam file. Untuk melakukannya jalankan perintah berikut: Outputnya akan terlihat seperti ini: 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: Tanda minus berarti mengembalikan offset dan karakter yang mengikuti menentukan jenis offset. (yaitu d = desimal, o = oktal, h = heks). 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: 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: 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: 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: Ada 5 opsi encoding yang tersedia untuk digunakan dengan string: Standarnya adalah 7 bit byte. Untuk mengubah pengkodean jalankan perintah berikut: Dalam perintah di atas, saya telah menetapkan default "s" yang berarti 7 bit byte. Cukup ganti "s" dengan huruf encoding pilihan Anda. 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: 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: Di dalam file, masukkan teks berikut: Simpan file dengan menekan CTRL dan O dan keluar dengan menekan CTRL dan X. Untuk menjalankan perintah string dengan opsi ini jalankan perintah berikut: Pilihannya akan dibaca dari file stringsopts dan Anda akan melihat nama file sebelum setiap string, offset dan "|" sebagai pemisah. Jika Anda ingin membaca lebih lanjut tentang string, Anda dapat menjalankan perintah berikut untuk mendapatkan bantuan. Atau Anda juga dapat membaca halaman manual: Untuk menemukan versi string yang Anda jalankan jalankan salah satu dari perintah berikut:string -d yourfilename
string - data yourfilenamestring -a yourfilename
Memformat Output
string -f yourfilename
string - print-file-name namafile Andayourfilename: sepotong teks
yourfilename: potongan teks lainnyastring -o yourfilename
16573 Anda
17024 teks
string -t d yourfilename
string -t o yourfilenamestrings -t h yourfilenamestring -s "|" namafile Anda
Sesuaikan Batas String
string -n 8 yourfilename
string --bytes = 8 yourfilename
Sertakan Spasi Putih
string -w yourfilename
Ubah Encoding
strings -e s yourfilename
string --encoding = s yourfilename Ubah Nama Deskripsi File Biner
string -T bfdname
Membaca Pilihan Dari File A
nano stringsopts
-f -o-n 3 -s "|"
string @stringsopts yourfilename
Mendapatkan bantuan
string - help
string pria
Cari Tahu Versi String Yang Anda Lari
string -v
string -Vstring --versi