`

Linux shell 进制转换

 
阅读更多

shell可以在不调用第3方命令,表示不同进制数据。这里总结以下表示方法。shell 脚本默认数值是由10 进制数处理,除非这个数字某种特殊的标记法或前缀开头. 才可以表示其它进制类型数值。如:以 0 开头就是 8 进制.以0x 开头就是16 进制数.使用 BASE#NUMBER 这种形式可以表示其它进制.BASE值:2-64.

 

使用方法:

  • 其它进制转为10进制

八进制转十进制:

[chengmo@centos5 ~]$ ((num=0123));
[chengmo@centos5 ~]$ echo $num;
83

[chengmo@centos5 ~]$ ((num=8#123));
[chengmo@centos5 ~]$ echo $num;    
83

((表达式)),(())里面可以是任意数据表达式。如果前面加入:”$”可以读取计算结果。

十六进制转十进制:

[chengmo@centos5 ~]$ ((num=0xff)); 
[chengmo@centos5 ~]$ echo $num;    
255
[chengmo@centos5 ~]$ ((num=16#ff));
[chengmo@centos5 ~]$ echo $num;    
255

base-32转十进制:

[chengmo@centos5 ~]$ ((num=32#ffff));
[chengmo@centos5 ~]$ echo $num;      
507375

base64转十进制:

[chengmo@centos5 ~]$ ((num=64#abc_)); 
[chengmo@centos5 ~]$ echo $num;       
2667327

二进制转十进制

[chengmo@centos5 ~]$ ((num=2#11111111));  
[chengmo@centos5 ~]$ echo $num;
255

 

  • 十进制转为其它进制

十进制转八进制

这里使用到:bc外部命令完成。bc命令格式转换为:echo "obase=进制;值"|bc

[chengmo@centos5 ~]$ echo "obase=8;01234567"|bc
4553207

二进制,十六进制,base64转换为 十进制也相同方法。

[chengmo@centos5 ~]$ echo "obase=64;123456"|bc  
30 09 00

 

shell,内置各种进制表示方法非常简单。记得base#number 即可。这里记得赋值时候用(())符号。不能直接用=号了。=号没有值类型。默认将后面变成字符串了。如:

[chengmo@centos5 ~]$ num=0123;
[chengmo@centos5 ~]$ echo $num;
0123

0开头已经失去了意义了。

可以通过定义符:let达到(()) 运算效果。

[chengmo@centos5 ~]$ let num=0123;
[chengmo@centos5 ~]$ echo $num;   
83

 

 

endTime=0008

endTime=$((10#endTime)) -->./test1: line 13: 10#endTime: value too great for base (error token is "10#endTime")

 

endTime=$((10#${endTime})) --> output is: 8

 
分享到:
评论

相关推荐

    shell二进制转换为十进制的脚本

    找到的一个不错的脚本,自己稍作修改,跟大家一起分享!

    shellex:C-shellcode 到十六进制转换器,在 gdb、windbg、radare2、ollydbg、x64dbg、免疫调试器和 010 编辑器中粘贴和执行 shellcode 的便捷工具

    Shellex 警告:世界上最丑的代码C-shellcode 到十六进制转换器。 在 gdb、windbg、radare2、ollydbg、x64dbg、immunity debugger 和 010 编辑器中粘贴和执行 shellcode 的便捷工具。 您在将 C-shellcode 转换为 HEX ...

    在linux环境中将Excel转换成文本的命令

    自动化任务以shell为例,shell不能直接操作Excel文档,需要将Excel转换成文本然后在解析和分析,我使用GO语言开发编译成二进制命令,上传到服务器当命令使用。

    UNIX新手指南_一些很好的Shell诀窍_au-unixtips4-pdf.pdf

    这些情况包括字符串的进制转换(十进制到十六进制、 十六进制到十进制、十进制到八进制,等等)、在管道循环中读取键盘、Subshell 执行、内联输 入、为目录中的每个文件执行一次命令,以及使用多种方法构造连续循环...

    Linux_Shell编程基础

    目录 • 1 变量赋值和引用 2 Shell 里的流程控制 o 2.1 if 语 句 o 2.2 && 和 || 操作符 o 2.3 case 语句 o 2.4 select 语句 o 2.5 while/for 循环 ...o 6.1 二进制到十进制的转换 o 6.2 文件循环拷贝 • 7 脚本调试

    shell编程基础(linux编程方向)

    • 1 合理使用注释 • 2 变量赋值和引用 • 3 Shell里的命令 o 3.1 Unix 命令 o 3.2 概念: 管道, 重定向和 backtick • 4 Shell里的流程控制 ...o 9.2 二进制到十进制的转换 o 9.3 文件循环拷贝 • 10 脚本调试

    linux大作业报告

    2、设计shell脚本程序,在屏幕上输出操作系统的信息,包括计算机名、Linux分发版本名称、Linux内核版本和当前的IP地址。 3、设计shell脚本程序,要求用户对/home目录下的文件进行备份,压缩为Linux系统中常用的tar....

    CentOS下对shell脚本加密的二种方法

    第一种方法(gzexe): ... 它是使用系统自带的gzexe程序,它不但加密,同时...它的作用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP、密码等不希望公开的问题. shc的官网下载地址:  h

    dos2unix命令 将DOS格式的文本文件转换成UNIX格式

    DOS格式的文本文件在Linux下,用较低版本的vi打开时行尾会显示^M,而且很多命令都无法很好的处理这种格式的文件。如果是个shell脚本,而Unix格式的文本文件在Windows下用Notepad打开时会拼在一起显示。因此产生了两...

    linux期中考試

    9. 某文件的权限为:p-wxr--r--,用数值形式表示该权限,则该八进制数为:( 344 ),该文件类型是管道。 10. 在vi编辑环境下,使用(Esc)键进行模式转换。 11. ( $# )代表命令行上除shell脚本名的参数个数。 12. ( $...

    bash2cpp:将bash脚本转换为C ++代码。 对于简单的shell脚本很有用,这些脚本可以转换为C ++以提高速度

    通过使用本机二进制文件而不是Shell脚本,可以缩短执行时间。 防止混淆代码,以防止修改。 bash2cpp并不是一个完整的翻译器,但是对于简单的脚本却表现出色。 要求 sudo apt-get install -y build-essential sudo...

    MSTAR,SAR数据集格式转换为JPG

    【只能在Linux下用】MSTAR数据集中的tool中包含了雷达的二进制格式转JPEG的编译文件,mstar2jpeg.为了方便处理图像,采用Python语言,调用Linux下的shell命令,整个1万多雷达二进制格式文件转为JPEG仅用了1分30秒。

    RED HAT LINUX 6大全

    8.3.2 在传输时转换文件—/etc/ftpcon- versions文件 147 8.3.3 配置主机的访问权—/etc/ftphosts 文件 148 8.3.4 FTP的日志文件—/var/log/ xferlog 149 8.4 FTP管理工具 149 8.4.1 ftpshut 149 8.4.2 ftpwho ...

    LINUX安装与配置简明手册

    5.2.16 识别二进制文件 57 5.2.17 使用vi文本编辑器程序 57 5.2.18 使用pico文本编辑器程序 58 5.2.19 查看文本文件,不使用文本编辑器 程序 60 5.2.20 把命令结果输出到文本文件中 61 5.2.21 建立别名 61 5.2.22 ...

    linux教程——很使用的那种

    linux系统结构:硬件、内核层、shell层、应用层、用户。 在安装linux的时候,会弹出 CD Found To begin testing the CD media before installation press OK. Choose Skip to skip the media test and ...

    入门学习Linux常用必会60个命令实例详解doc/txt

    前面介绍了Linux下有多种Shell,一般缺省的是Bash,如果想更换Shell类型可以使用chsh命令。先输入账户密码,然后输入新Shell类型,如果操作正确系统会显示“Shell change”。其界面一般如下: Changing fihanging ...

    对Shell 脚本加密的方法

    shc是一个加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件

    dos2unix.zip

    DOS格式的文本文件在Linux底下,用较低版本的vi打开时行尾会显示^M,而且很多命令都无法很好的处理这种格式的文件,如果是个shell脚本,。而Unix格式的文本文件在Windows下用Notepad打开时会拼在一起显示。因此产生...

    linux_c API函数大全

    LINUX C函数库API 1.字符测试篇 15 1.1 15 isalnum(测试字符是否为英文或数字) 15 1.2 15 isalpha (测试字符是否为英文字母) 15 1.3 16 isascii(测试字符是否为ASCII 码字符) 16 1.4 17 iscntrl(测试字符是否...

    pe_to_shellcode_linux:PE到shellcode会将任何Windows非.dot net 64位EXE文件转换为shellcode。 这基于hasherezade的Windows pe_to_shellcode(https:github.comhasherezadepe_to_shellcode)

    pe_to_shellcode_linux PE到shellcode会将任何Windows非.dot net 64位EXE文件转换为shellcode。 这基于hasherezade的Windows pe...-o输出要使用的二进制shell文件 用法:pe2shellcode -f 64bitexe.exe -o shellcode.sc

Global site tag (gtag.js) - Google Analytics