shell下如何实现数据类型的转换
来源:网络收集 点击: 时间:2024-03-04数字类型转字符类型
数字类型转字符类型,是比较常见的,也是必须容易实现的。大多时候系统能够自动进行转换,如:
aa=$((1+1));echo $aa
变量aa赋值为整数2,但echo 输出时已被当成字符型。当然我们也可以强制进行转换,如:
echo $aa
通过与空字符串进行连接,强化将变量aa转化成了字符型。

上面的方法也同样适用于各种浮点数类型转字符类型。如:
aa=$(awk BEGIN{print 7.01*5-4.01 });
echo $aa;
echo $aa;
变量aa是算式(7.01*5-4.01)的值,是个浮点数,可看到成功转化成字符。只是shell要实现浮点数类型运算会稍显麻烦。

字符类型转数值类型
反过来,字符类型转数值类型也是可以实现的。
如:
aa=12;
aa=$(($a+4));
echo $aa;
在shell中,给变更赋值中的数字默认是被当做字符串的。

日期型转数值
日期型转数值主要是通过date命令来实现来的。
命令:date -d 2018-07-24 +%s
参数“%s”的作用是将-d参数后的日期转换成自UTC 时间 (1970-01-01 00:00:00) 以来所经过的秒数。

日期型转字符
要日期型转数值差不多,也是通过date命令来实现来的
date -d 2018-07-24 12:00:25 +%Y-%m-%d
将-d参数后的时间,按照“%Y-%m-%d”格式输入字符串。

数值转日期
日期型的转换,都可以通过date命令来完成。
date -d @1538617600 +%Y-%m-%d
通过-d将自UTC 时间 (1970-01-01 00:00:00) 以来所经过的1538617600秒后的时间以格式字符输出。

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_237544.html