I have a file containing a list of hexadecimal numbers, as 0x12345678
one per line.
I want to make a calculation on them. For this, I thought of using awk
. But if printing an hexadecimal number with awk
is easy with the printf
function, I haven't find a way to interpret the hexadecimal input other than as text (or 0
, conversion to integer stops on the x
).
awk '{ print $1; }' // 0x12345678
awk '{ printf("%x
", $1)}' // 0
awk '{ printf("%x
", $1+1)}' // 1 // DarkDust answer
awk '{ printf("%s: %x
", $1, $1)}' // 0x12345678: 0
Is it possible to print, e.g. the value +1?
awk '{ printf(%x
", ??????)}' // 0x12345679
Edit: One liners on other languages welcomed! (if reasonable length ;-) )
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…