获取数组的长度
my_array=(A B "C" D)
echo "数组元素个数为: ${#my_array[*]}"
echo "数组元素个数为: ${#my_array[@]}"
Shell算术运算工具:expr(繁琐)
expr 是一款表达式计算工具,使用它能完成表达式的求值操作。
例如,两个数相加(注意使用的是反引号 ` 而不是单引号 '):
#!/bin/bash
val=`expr 2 + 2`
echo "两数之和为 : $val"
注意:
1、表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样。
2、完整的表达式要被 包含,注意这个字符不是常用的单引号,在 Esc 键下边。
注意:条件表达式要放在方括号之间,并且要有空格,例如: [
a
=
=
a==
a==b] 是错误的,必须写成 [ $a == $b ]。
Shell算术运算工具:(( ))(推荐)
参考:http://c.biancheng.net/view/2480.html
双小括号 (( )) 是 Bash Shell 中专门用来进行整数运算的命令,它的效率很高,写法灵活,是企业运维中常用的运算命令。
注意:(( )) 只能进行整数运算,不能对小数(浮点数)或者字符串进行运算。后续讲到的 bc 命令可以用于小数运算。
Shell for循环中类似range的功能
for i in {1..100}
do
echo $i
done
使用{1…100}这种方式简单明了,大家也可以在linux命令模式下直接:echo {1…100}看一下效果。
参考:https://www.cnblogs.com/xiaocaoer/p/6478881.html
shell后台运行程序
nohup bash my_shell_script.sh > my_log.log 2>&1 &