Linux/UNIX shell中如何将数字转换为十六进制数
时间:2019-11-20 08:53:04 来源:igfitidea点击:
在Linux中,可以使用bc,print等命令,将数字的进制进行转换。
bc句法
使用以下bc语法来转换数字的进制:
# 将10进制转换为8进制 echo "obase=8; ibase=10; 需转换的十进制数" | bc ## 将8进制数转换为16进制 echo "obase=16; ibase=8; 27" | bc
其中:
- obase =设置输出基数(例如2、8、10、16)
- ibase =设置输入基数(例如2、8、10、16)
- 27 =需要转换的数字。
printf命令语法
您还可以使用printf命令转换数字的进制:
## 将0x100转换为8进制 printf "%o\n" 0x100
输出示例:
400
或者
## 将10进制123转换为16进制 printf "%x\n" 123
输出示例:
7B
十六进制数必须以0x为前缀,hexadecimal
八进制数必须以0为前缀。 octal
十进制正常写法。decimal