bash – expr:非整数参数.如何减去点十进制数
发布时间:2020-12-15 21:34:29 所属栏目:安全 来源:网络整理
导读:我试图通过运行以下bash脚本减去两个数字: #!/bin/bash -xcur_length=`cat length.txt`cur_pos=`cat pos.txt`diff=`$(expr $cur_length - $cur_pos)`echo "$diff" 但输出说expr有一些问题: +++ expr 235.68 - 145.9expr: non-integer argument+ diff=+ ech
我试图通过运行以下bash脚本减去两个数字:
#!/bin/bash -x cur_length=`cat length.txt` cur_pos=`cat pos.txt` diff=`$(expr $cur_length - $cur_pos)` echo "$diff" 但输出说expr有一些问题: +++ expr 235.68 - 145.9 expr: non-integer argument + diff= + echo '' 我在网上搜索过“expr:non-integer argument”,但没有涉及点十进制数. 提前致谢. 解决方法
Bash不做分数,只做整数.改用bc:
$echo '235.68 - 145.9' | bc 89.78 当然,结果可以像使用expr一样放在shell变量中: $diff="$(echo '235.68 - 145.9' | bc)" $echo $diff 89.78 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |