bash中的算术运算
+、-、/、%、*
实现算术运算
1. let var=算术表达式
2. var=$[算术表达式]
3. var=$((算术表达式))
4. var=$(expr arg1 arg2...)
乘法符号有些场景需要转义
bash有内建的随机数生成器:$RANDOM
增强型赋值
+=,-=,/=, %=
自增、自减
比如自增: let var++
练习1.写一个脚本
计算/etc/passwd文件中的第10个用户和第20用户的ID之和
#!/bin/bash userId1=$(head -10 /etc/passwd | tail -1 | cut -d: -f3) userId2=$(head -20 /etc/passwd | tail -1 | cut -d: -f3) useridsum=$[$userId1+$userId2] echo "uid sum is $useridsum"
练习2.写一个脚本
传递两个文件路径作为参数给脚本,计算这两个文件中所有空白行之和
#!/bin/bash spaceline1=$(grep "^[[:space:]]*") $1 | wc -l) spaceline2=$(grep "^[[:space:]]*") $2 | wc -l) echo "$[$spaceline1+$spaceline2]"
练习3.统计/etc, /var, /usr目录共有多少个一级子目录和文件
#!/bin/bash fnum1="$(ls /usr | wc -l)"