GNU/Linux >> Belajar Linux >  >> Linux

Cara Menggunakan Perintah Hexdump Linux dengan Contoh Praktis

Hexdump adalah perintah Linux yang sangat berguna untuk pengembang dan debugger aplikasi. Ini memiliki kemampuan untuk membuang konten file ke dalam banyak format seperti heksadesimal, oktal, ASCII, dan desimal. Perintah ini mengambil file, atau input standar apa pun, sebagai parameter input dan mengonversinya ke format pilihan Anda. Mari kita asumsikan Anda bekerja dengan data biner dan Anda tidak dapat memahami format file, Anda dapat menggunakan perintah Hexdump untuk mendapatkan konten file dalam format yang lebih mudah dibaca. Perintah ini sudah diinstal sebelumnya dengan semua sistem operasi Linux modern seperti CentOS, Fedora, Ubuntu, Debian, Arch Linux dll. Pada artikel ini, kami akan mendemonstrasikan penggunaan perintah hexdump menggunakan berbagai contoh. Ditulis dalam bahasa C, perintah ini mungkin mudah dimengerti oleh programmer C profesional, tetapi untuk profesional TI lainnya, ini mungkin perintah yang rumit. Kami akan mencoba melakukan yang terbaik untuk menunjukkan penggunaan dan tujuannya di artikel ini.

1) Hexdump -b

Menggunakan sakelar "-b" dengan Hexdump akan menampilkan offset input dalam format heksadesimal. Opsi ini juga disebut "Tampilan oktal satu byte". Keluaran akan diikuti oleh enam belas dipisahkan spasi, tiga kolom, diisi nol, byte data masukan, dalam oktal, per baris. Berikut adalah contoh output yang kami terima ketika kami menjalankan perintah ini dengan mengaktifkan "-b" pada file bernama "Linoxide".

# hexdump -b Linoxide
0000000 124 150 151 163 040 151 163 040 040 141 040 164 145 163 164 040
0000010 114 151 156 157 170 151 144 145 040 106 151 154 145 012 125 163
0000020 145 144 040 146 157 162 040 144 145 155 157 156 163 164 162 141
0000030 164 151 157 156 040 160 165 162 160 157 163 145 163 012 012
000003f 

2) Hexdump -c

Opsi ini disebut sebagai "Tampilan karakter satu byte". Anda dapat menggunakan parameter perintah ini untuk menampilkan offset input dalam heksadesimal. String keluaran akan diikuti oleh enam belas karakter yang dipisahkan spasi, tiga kolom, diisi spasi, data input per baris. Berikut adalah contoh output dari perintah ini.

hexdump -c Linoxide 0000000   T   h   i   s       i   s           a       t   e   s   t 0000010   L   i   n   o   x   i   d   e       F   i   l   e  \n   U   s 0000020   e   d       f   o   r       d   e   m   o   n   s   t   r   a 0000030   t   i   o   n       p   u   r   p   o   s   e   s  \n  \n 000003f

3) Hexdump -C

Juga dikenal sebagai "Tampilan canonical hex+ASCII", ini menunjukkan offset input dalam heksadesimal, output diikuti oleh enam belas byte yang dipisahkan oleh spasi, dua kolom, heksadesimal, bersama dengan enam belas byte yang sama dalam format %_p yang dilampirkan dalam ``| '' karakter. Berikut adalah contoh kerja dari opsi perintah ini.

# hexdump -C Linoxide
00000000  54 68 69 73 20 69 73 20  20 61 20 74 65 73 74 20  |This is  a test |
00000010  4c 69 6e 6f 78 69 64 65  20 46 69 6c 65 0a 55 73  |Linoxide File.Us|
00000020  65 64 20 66 6f 72 20 64  65 6d 6f 6e 73 74 72 61  |ed for demonstra|
00000030  74 69 6f 6e 20 70 75 72  70 6f 73 65 73 0a 0a     |tion purposes..|
0000003f 

4) Hexdump -d

Sakelar/opsi ini menunjukkan offset input dalam heksadesimal, bersama dengan delapan unit data input dua byte yang dipisahkan oleh spasi, lima kolom, terisi nol. Outputnya dalam desimal tak bertanda per baris. Ini juga disebut sebagai mode "Tampilan desimal dua byte". Berikut adalah contoh output dari perintah ini.

  hexdump -d Linoxide
0000000   26708   29545   26912   08307   24864   29728   29541   08308
0000010   26956   28526   27000   25956   17952   27753   02661   29525
0000020   25701   26144   29295   25632   28005   28271   29811   24946
0000030   26996   28271   28704   29301   28528   25971   02675   00010
000003f 

5) Hexdump -o

Juga dikenal sebagai "Tampilan oktal dua byte", ini menunjukkan offset input yang ditentukan dalam heksadesimal. Keluaran dari perintah diikuti oleh delapan data masukan yang dipisahkan spasi, enam kolom, diisi nol, dua byte, dalam oktal, per baris.

 # hexdump -o Linoxide
0000000  064124  071551  064440  020163  060440  072040  071545  020164
0000010  064514  067556  064570  062544  043040  066151  005145  071525
0000020  062145  063040  071157  062040  066545  067157  072163  060562
0000030  064564  067157  070040  071165  067560  062563  005163  000012
000003f 

6) Hexdump -x

Ini menunjukkan offset dalam heksadesimal, diikuti oleh delapan, dipisahkan spasi, empat kolom, diisi nol, jumlah dua byte data input, dalam heksadesimal. Ini disebut sebagai "Tampilan heksadesimal dua byte".

 # hexdump -x Linoxide
0000000    6854    7369    6920    2073    6120    7420    7365    2074
0000010    694c    6f6e    6978    6564    4620    6c69    0a65    7355
0000020    6465    6620    726f    6420    6d65    6e6f    7473    6172
0000030    6974    6e6f    7020    7275    6f70    6573    0a73    000a
000003f 

7) Hexdump -v

Secara default, hexdump menggunakan tanda asterisk (*) untuk menggantikan baris yang identik dalam string output, tetapi opsi -v menyebabkan hexdump menampilkan semua data input. Opsi ini berguna saat melakukan analisis output lengkap dari string atau teks apa pun. Perintah ini juga dapat digunakan dalam skrip shell/bash untuk otomatisasi tugas yang Anda inginkan dengan lebih baik.

8) Hexdump -s

"Hexdump -s" hanya menampilkan jumlah byte tertentu dari sebuah file, sintaks umum untuk menggunakan opsi ini adalah sebagai berikut.

hexdump -s n -c  File 

Di mana, ganti "n" dengan jumlah baris yang ingin Anda tampilkan, dan "File" dengan nama file Anda yang sebenarnya. Contoh keluaran berikut harus lebih memperjelas konsep ini.

# hexdump -s 1 -c  Linoxide
0000001   h   i   s       i   s           a       t   e   s   t       L
0000011 

Perintah di atas hanya akan menampilkan satu baris output.

Anda bisa mendapatkan detail lebih lanjut tentang hexdump menggunakan manual bantuannya. Cukup ketik perintah berikut di terminal sistem Linux Anda dan itu akan menampilkan semua kemungkinan dan opsi yang dapat digunakan dengan hexdump.

man hexdump 

Kesimpulan

Hexdump adalah utilitas yang cukup berguna untuk administrator sistem dan pemrogram. Itu membuat menganalisis dan decoding berbagai format file sepotong kue. Ini dapat dengan mudah digunakan dalam pemrograman bash atau skrip bahasa pemrograman C untuk melakukan tugas-tugas kompleks dari konversi format file atau analisis dan rekayasa balik. Pada artikel ini, kami telah memperkenalkan hexdump, opsi yang berguna dan beberapa demonstrasi yang berguna dari perintah yang terkait dengan utilitas ini. Semoga Anda menikmati artikel ini. Jika Anda memiliki komentar atau pertanyaan, jangan ragu untuk memberi tahu kami di komentar.


Linux
  1. Cara Menggunakan Perintah Sed di Linux dengan Contoh

  2. Perintah SCP di Linux:Cara Menggunakannya, dengan Contoh

  3. Cara Menggunakan Perintah Dig di Linux dengan Contoh

  1. Cara Menggunakan Perintah su di Linux dengan Contoh

  2. Cara menggunakan Perintah Shutdown Linux dengan Contoh

  3. Cara Menggunakan Perintah RMmod Di Linux Dengan Contoh

  1. Cara Menggunakan Perintah w di Linux dengan Contoh

  2. Cara Menggunakan Perintah jam tangan Linux dengan Contoh

  3. Perintah wc Linux dengan Contoh