Saya memiliki baris bash:
expr substr $SUPERBLOCK 64 8
Yang kembali ke saya string line:
00080000
Saya tahu bahwa ini sebenarnya adalah 0x00080000 di little-endian. Apakah ada cara untuk membuat variabel integer darinya di bash di big-endian seperti 0x80000?
Jawaban yang Diterima:
Mungkin cara yang lebih baik untuk melakukan ini, tetapi saya telah menemukan solusi ini yang mengubah angka menjadi desimal dan kemudian kembali ke hex (dan secara manual menambahkan 0x
):
printf '0x%x\n' "$((16#00080000))"
Yang dapat Anda tulis sebagai:
printf '0x%x\n' "$((16#$(expr substr "$SUPERBLOCK" 64 8)))"