shell自定义变量中的整形运算
2014-04-08 14:34
507 查看
整型运算
我们可以通过declare -i来定义整型变量。在上一次的学习中,使用了$(($OPTIND - 1))来进行计算$((…))是用于进行整型运算的。在$((…))中,我们并不需要对变量加上$来表示它的值,也不需要预先声明这个变量是个整型。在双引号下也能进行有效运算。下面是个例子:
#declare -i aa=13
aa=13
echo '$((aa-3))'=$((aa-3))
echo '$(($aa-3))'=$(($aa-3))
#date显示日期,date +%j表示今天是年度的第几天,$(command)表示其显示结果
echo "Only $(( (365-$(date +%j)) / 7 )) weeks until the New Year"
前面两个echo得到的值都是10,我们也不需要预先声明aa是个整数,因为$((…))已经表明是整型的运算,会自动将字符变为整数。
运算类型和C语言一样。也支持$((x += 2))的格式,包括下面几种操作。在下面的例子中我们引用了上面aa=13。
++ :$((aa++))为13,并将aa赋值为14,注意使用$(($aa++))会报错,无法解析13++的含义,所以为了简洁并且不产生错误,不在运算式中加入$,如果是$((++aa))为14,并将aa赋值为14,这与C语言是一样的。
-- :$((aa--))为13,并将aa赋值为12,如果是$((--aa))为12,并将aa赋值为12。
我们可以通过declare -i来定义整型变量。在上一次的学习中,使用了$(($OPTIND - 1))来进行计算$((…))是用于进行整型运算的。在$((…))中,我们并不需要对变量加上$来表示它的值,也不需要预先声明这个变量是个整型。在双引号下也能进行有效运算。下面是个例子:
#declare -i aa=13
aa=13
echo '$((aa-3))'=$((aa-3))
echo '$(($aa-3))'=$(($aa-3))
#date显示日期,date +%j表示今天是年度的第几天,$(command)表示其显示结果
echo "Only $(( (365-$(date +%j)) / 7 )) weeks until the New Year"
前面两个echo得到的值都是10,我们也不需要预先声明aa是个整数,因为$((…))已经表明是整型的运算,会自动将字符变为整数。
运算类型和C语言一样。也支持$((x += 2))的格式,包括下面几种操作。在下面的例子中我们引用了上面aa=13。
++ :$((aa++))为13,并将aa赋值为14,注意使用$(($aa++))会报错,无法解析13++的含义,所以为了简洁并且不产生错误,不在运算式中加入$,如果是$((++aa))为14,并将aa赋值为14,这与C语言是一样的。
-- :$((aa--))为13,并将aa赋值为12,如果是$((--aa))为12,并将aa赋值为12。
相关文章推荐
- Shell基础-Bash变量-用户自定义变量
- JavaScript基础 声明一个整形变量并赋值,两个整形变量进行加法运算
- shell基础-bash变量-用户自定义变量
- shell 概述、变量及输入输出、运算和比较
- shell脚本中使用自定义命令之一---使用环境变量的方式
- Linux学习之shell变量的运算
- Shell(bash)脚本学习之--------内建/外建,自定义变量和环境变量
- shell变量计算长度及加减运算方法总结
- JavaScript基础 声明一个整形变量并赋值,两个整形变量进行加法运算
- shell学习整理(4)- 函数添加环境变量AND数学运算
- Shell 自定义变量
- shell——变量、数学运算、数组
- shell中,用set命令可显示全部的变量(包括环境变量和自定义变量),env只显示环境变量
- shell基础-bash变量-数值运算与运算符
- Shell实现的一些数学运算自定义函数分享
- shell中的环境变量和自定义变量
- Shell---常用命令、常用环境变量、PS1、语系变量、位置变量、预定义变量、数值运算
- shell基础之一:变量、变量运算及条件测试
- 【shell】变量与运算操作