私はbashラインを持っています:
expr substr $SUPERBLOCK 64 8
これは私に返された文字列行です:
00080000
私はこれが実際にはリトルエンディアンバイトの順序で0x00080000であることを知っています。 Bashでビッグエンディアンモード(例えば0x80000)で整数変数を生成する方法はありますか?
ベストアンサー1
これを行うより良い方法があるかもしれませんが、数値を10進数に変換してから16進数に変換して手動で追加するこの解決策を思いつきました0x
。
printf '0x%x\n' "$((16#00080000))"
書くことができます:
printf '0x%x\n' "$((16#$(expr substr "$SUPERBLOCK" 64 8)))"