您的位置:首页 > 运维架构 > Shell

shell 脚本中字符的自增

2017-03-10 12:34 127 查看
在shell 脚本中处理的一般都是字符, 用它处理数字不是很合适,但有时候我们可能会使用到数字与字母的转换

比如 我想让a 自增,依次为b c d... 这在shell中并不能直接处理,这时需要将字符与ascii吗进行转换, 或则建立 数字表与字母表的映射来实现

我就遇到这样一个问题, 因此这里总结下,主要方法参考了这里:http://blog.csdn.net/justlinux2010/article/details/8019990

var=a

i=97

利用printf:

字符转数字:
printf "%d" \'${var}   注意这里\后面是单引号

数字转字符:
printf  \\x`printf %x ${i}`    这里\\X后面的是一对着重号, 键盘上波浪线下面的符号

比如我要实现var自增可以这样处理:

temp=`printf "%d" \'${var}`

let temp++

var=$(printf \\x`printf %x ${temp}`)

这样var 值就变成b了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息