コンソール上に連続した16進数を出力する

ちょっとした処理で、特定範囲の16進数の一覧が必要になったので、その備忘。
以下のように、printfでフォーマットを指定してやることで、範囲内容の16進数を取得可能だ。
2桁であれば255、3桁以降なら4095、65535と乗算する数-1を桁数に合わせて範囲指定すればいい。

printf '%02x\n' {0..255} # 範囲、桁数をそのまま指定
(i=4 && echo printf "'%0"$i"x\n'" {0..$(( 16 ** $i - 1))} | bash) # 桁数を変数に入れて指定
Sponsored Links

blacknon@BS-PUB-UBUNTU-01:~$ printf '%01x\n' {0..15}
0
1
2
3
4
5
6
7
8
9
a
b
c
d
e
f
blacknon@BS-PUB-UBUNTU-01:~$ (i=1 && echo printf "'%0"$i"x\n'" {0..$(( 16 ** $i - 1))}|bash)
0
1
2
3
4
5
6
7
8
9
a
b
c
d
e
f

 


Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。

*