bash语法及脚本编写
1、bash变量命名规则:

- 系统定义好的变量:

2、变量的定义:
name="chen" // 定义字符串###echo $name // 调用变量###a=3 readonly a //将a设置为只读变量,只读变量无法修改也无法删除###unset a // 删除a变量
变量类型:

数组操作:

3、if语句:
格式:
if condition2; then command1; elif condition2; then command 2…fi
比较运算符:
-eq表示==;-lt表示<;-gt表示>;在if判断语句中会用</>需要用两个中 括号括起来:if[[5>2]]; 使用-lt、-gt、-eq、==只用一个中括号
例句:
if [ $a -eq $b ]; then echo "equal";elif [ $a -gt $b ]; then echo "bigger";elif [ $a -lt $b ]; then echo "little";fi
字符串比较:

逻辑判断:

4、for语句:
格式:
for loop in 1,2,3,4,5 ; do command;done
例句:从文本中读取内容,并吧内容循环打出来
for i in $(cat test);do echo $i;done
5、while语句

例句:从文本中读取内容,并吧内容循环打出来
while read line;do echo $line;done<test
for和while读取文件的不同 asdb abc 如果单行内容中存在空格 for会将其读取成两行 while按照文本原本形式读取
6、算术运算符

整数运算可以用((i+x))形式进行运算
i=1((i=i+1));echo $i
- 浮点数计算:

7、read:从标准输入读取输入内容并赋值给指定变量
一个变量对应一个值,可以进行多遍了赋值,如果不声明变量默认复制给REPLY变量
8、统计内存
for i in `ps aux | awk'{print $6}' |grep -v 'RSS'`count=$[$count+$i]echo "$count/kb"
9、脚本参数传递


- 参数表达式含义:
$0:脚本文件名称$1:第一个参数$n:第n个参数$#:传递参数的个数$@:所有参数$$:脚本运行的当前进程ID号$\:以一个单字符串显示所有向脚本传递的参数(所有参数)$?:显示最好命令的退出状态。0表示没有错误,其他任何值表明有错误
10、再bash脚本中可对文件进行操作

11、特殊符号的使用

#!/bin/bashfor arg in "$*"doserver_ip=$(kubectl get pods -n pmc -owide |grep $arg | awk '{print $6}')echo $server_ipdone


