Dapatkah hexdump (hd) atau octal dump (od) digunakan untuk menampilkan data biner sebagai nol dan satu?

3

Apakah ada cara untuk menampilkan konten biner dari file sebagai nol dan satu?

Jadi, bukannya yang seperti ini:

 DE AD BE EF

Kita bisa mendapatkan output seperti ini:

11011110 10101101 10111110 11101111

Apakah ada cara untuk melakukan ini dengan program / switch perintah dasar?

snapfractalpop
sumber

Jawaban:

5

Kenapa tidak digunakan xxd? Gunakan seperti ini:xxd -b file

Misalnya, melakukan xxd -b google-chrome-stable_current_i386.deb | headmemberi:

0000000: 00100001 00111100 01100001 01110010 01100011 01101000  !<arch
0000006: 00111110 00001010 01100100 01100101 01100010 01101001  >.debi
000000c: 01100001 01101110 00101101 01100010 01101001 01101110  an-bin
0000012: 01100001 01110010 01111001 00100000 00100000 00100000  ary   
0000018: 00110001 00110100 00110000 00111001 00110111 00111001  140979
000001e: 00110001 00111000 00110001 00110101 00100000 00100000  1815  
0000024: 00110000 00100000 00100000 00100000 00100000 00100000  0     
000002a: 00110000 00100000 00100000 00100000 00100000 00100000  0     
0000030: 00110001 00110000 00110000 00110110 00110100 00110100  100644
0000036: 00100000 00100000 00110100 00100000 00100000 00100000    4   

Jika mau, Anda dapat menggunakan cutuntuk memangkas kolom paling kiri dan paling kanan dengan melakukan xxd -b google-chrome-stable_current_i386.deb | head | cut -b10-62:

00100001 00111100 01100001 01110010 01100011 01101000 
00111110 00001010 01100100 01100101 01100010 01101001 
01100001 01101110 00101101 01100010 01101001 01101110 
01100001 01110010 01111001 00100000 00100000 00100000 
00110001 00110100 00110000 00111001 00110111 00111001 
00110001 00111000 00110001 00110101 00100000 00100000 
00110000 00100000 00100000 00100000 00100000 00100000 
00110000 00100000 00100000 00100000 00100000 00100000 
00110001 00110000 00110000 00110110 00110100 00110100 
James
sumber
1

Jika kami memiliki hex dump dan berdasarkan contoh yang diberikan, solusi yang mungkin terlihat seperti pipa berikut:

echo DE AD BE EF | xxd -r -p | xxd -b

dimana

echo DE AD BE EF masukan contoh data (spasi putih dapat dipertahankan)

xxd -r -p mengkonversi hex dump menjadi byte mentah

xxd -b mengkonversi byte mentah ke dump biner

Keluaran:

00000000: 11011110 10101101 10111110 11101111 ....

Andrey Bochkov
sumber