rizin/man/rz-ax.1

110 lines
2.5 KiB
Groff

.Dd Dec 28, 2020
.Dt RZ_AX 1
.Sh NAME
.Nm rz-ax
.Nd rizin base converter
.Sh SYNOPSIS
.Nm rz-ax
.Op Fl ebBsSvxkKh
.Op [expr] ...
.Sh DESCRIPTION
This command is part of the rizin project.
.Pp
This command allows you to convert values between positive and negative integer, float, octal, binary and hexadecimal values.
.Sh OPTIONS
.Bl -tag -width Fl
.It Fl b
Convert from binary string to character (rz-ax \-b 01000101)
.It Fl k
Keep the same base as the input data
.It Fl e
Swap endian.
.It Fl F
Read C strings from stdin and output in hexpairs. Useful to load shellcodes
.It Fl i
Dump stdin to C array in stdout (xxd replacement)
.It Fl I
Convert LONG to/from IP ADDRESS
.It Fl l
Append newline to the decoded output for human friendly-ness
.It Fl K
Show randomart key asciiart for values or hexpairs
.It Fl s
Convert from hex string to character (rz-ax \-s 43 4a 50)
.It Fl S
Convert from character to hex string (rz-ax \-S C J P)
.It Fl n
Show hexpairs from integer value
.It Fl N
Show hexadecimal C string from integer value
.It Fl u
Convert given value to human readable units format
.It Fl v
Show program version
.It Fl x
Convert a string into a hash
.It Fl h
Show usage help message
.It Fl o
Convert from octal string to char (rz-ax -o 162 62)
.El
.Sh USAGE
.Pp
Force output mode (numeric base)
.Pp
=f floating point
=2 binary
=3 ternary
=8 octal
=10 decimal
=16 hexadecimal
.Pp
Available variable types are:
.Pp
int \-> hex rz-ax 10
hex \-> int rz-ax 0xa
\-int \-> hex rz-ax \-77
\-hex \-> int rz-ax 0xffffffb3
int \-> bin rz-ax b30
bin \-> int rz-ax 1010d
float \-> hex rz-ax 3.33f
hex \-> float rz-ax Fx40551ed8
oct \-> hex rz-ax 35o
hex \-> oct rz-ax Ox12 (O is a letter)
bin \-> hex rz-ax 1100011b
hex \-> bin rz-ax Bx63
.Pp
With no arguments, rz-ax reads values from stdin. You can pass one or more values
as arguments.
.Pp
$ rz-ax 33 0x41 0101b
0x21
65
0x5
.Pp
You can do 'unpack' hexpair encoded strings easily.
.Pp
$ rz-ax \-s 41 42 43
ABC
.Pp
And it supports some math operations.
.Pp
$ rz-ax
0x5*101b+5
30
.Pp
It is a very useful tool for scripting, so you can read floating point values, or get the integer offset of a jump or a stack delta when analyzing programs.
.Pp
.Sh SEE ALSO
.Pp
.Xr rizin(1) ,
.Xr rz-hash(1) ,
.Xr rz-find(1) ,
.Xr rz-bin(1) ,
.Xr rz-diff(1) ,
.Xr rz-gg(1) ,
.Xr rz-run(1) ,
.Xr rz-asm(1)
.Sh AUTHORS
.Pp
Written by pancake <pancake@nopcode.org>.