# 数字加减用双括号
INDEX=1
INDEX=$((INDEX+1))
#数组
ARR=(”A“ "B") # 定义数组
ARR+="C" #追加
ARR[3]="D" #赋值
echo "${ARR[@]}" #所有元素
echo "${ARR[*]}" #所有元素
echo "${#ARR[@]}" #素组长度
echo "${ARR[0]}}" #下标从0开始
#遍历
for ELEMENT in ${ARR[@]}
do
echo "${ELEMENT}"
done
#字符串处理
# 字符串连接,直接写,不需要任何符号
A1="a1"
A2="${A1}b1" #a1b1
echo "abcd" | grep "bc” #匹配
echo $? #能匹配到,输出0,否则输出1; 这个$?一定要紧跟上一条语句,写脚本时经常会出现这个失误
echo "abcd" | grep "ef"
echo $? # 输出1
echo "abc def gh" | cut -f1 -d\ #字符串split,根据空格拆分,详见cut用法
echo "abcd" | sed ’s/a/A/g‘ #字符串替换
echo "${#A1}" #字符串长度
# 判断字符串是否为空
#!/bin/sh
STRING=
if [ -z "$STRING" ]; then
echo "STRING is empty"
fi
if [ -n "$STRING" ]; then
echo "STRING is not empty"
fi
# 文件,目录判断
if [ -f /tmp/aa.txt ]; then
echo "aa.txt exists and is file"
fi
if [ ! -f /tmp/aa.txt ]; then
echo "file does not exist"
touch "/tmp/aa.txt"
fi
if [ -d /tmp/aa ]; then
echo "aa exists and is dir"
fi