Yanıtlar:
hdeşanlamlıdır hexdump -Cüzerinde FreeBSD ve bazı Linux dağıtımlarında. hexdumpila BSD gün ; oddan Zamanın başlangıcından . Sadece odbir POSIX tarafından standardize . Tek UNIX gerekçe geçen niçin odtercih edilerek seçildi hdya xd.
Bu komutlar çok benzer şeyler yapar: sekizli, ondalık veya onaltılık gösterimi kullanarak ikili bir dosyanın metinsel gösterimini görüntüler. İkisi arasında temel bir fark yok.
Çıkış formatını kontrol etmek için birçok seçeneğe sahiptirler ve bazı formatlara yalnızca bir veya diğer komutla ulaşılabilir. Özellikle, bir ikili dosyada ne bir bakış görmek için, hdçıktı biçimini seviyorum , sağda bir sütun tam olarak yazdırılabilir karakterler gösteren; odbunu yapamam.
$ od /bin/sh | head -n 2 # od default: octal, 2-byte words
0000000 042577 043114 000402 000001 000000 000000 000000 000000
0000020 000002 000076 000001 000000 170020 000101 000000 000000
$ od -Ax -t x1 /bin/sh | head -n 2 # od showing bytes in hexadecimal
000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
000010 02 00 3e 00 01 00 00 00 10 f0 41 00 00 00 00 00
$ hd /bin/sh | head -n 2 # hd default output: nice
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 |.ELF............|
00000010 02 00 3e 00 01 00 00 00 10 f0 41 00 00 00 00 00 |..>.......A.....|
04257718 bit mi yani 9/4 bayt mı?
123taban 10'da (ondalık) temsil edilen bir sayıdır, oysa 0123sayının taban 8'de (sekizli), yani 012383'te temsil edildiği anlamına gelir 0x123. Taban 16'da (onaltılı), yani 291'de temsil edilir. odçıktı biçimi ile ilgisiz .
Aslında odhem hex / oct / dec hem de yazdırılabilir karakterleri görüntüleyebilir:
$ od -Ax -tx1z /bin/sh | head -n2
000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 >.ELF............<
000010 03 00 3e 00 01 00 00 00 32 4e 00 00 00 00 00 00 >..>.....2N......<
Temel fark, sanırım, sadece tarihseldir. Ayrıca bazı sürümler hdrenkli çıktılar verebilir.
od, zson eki desteklemiyor-tx1z
hd. Yine de, yararlı, teşekkür ederim :)
xxd! : D