if 条件语句
if 语句常见的条件有:
- 数值判断: -eq -ne -gt -ge -lt -le $?
- 字符串判断 -z == !=
- 文件判断 -f -a -d ! 非
if 条件语句格式
代码语言:shell复制if [ condition ]
then
command
fi
tips:
- pwd ; ls 两个命令分开执行
- pwd && ls 前一个命令顺利执行后才可执行后一个命令
- pwd || ls 前一个命令如果顺利执行则不再执行后一个命令
for 循环
for i in $(seq 20) ()表示先执行 前面要加上$ $(seq 20)就是一个 list
for i in seq 20
等同于$()
do
echo file${i} 变量放在 {}里面,否则容易分别不出变量
done
while循环
while read id id 只是一个代号,可以是任意字符,但后面要保持一致
do
command
done
ls file* | while read x ; do mv ${x} ${x}.txt; done
参数扩展
掐头去尾
${变量#关键词} 从头对变量搜索关键词,并将符合关键词的内容去除掉(按最小)
${变量##关键词} 从头对变量进行关键词搜索,并将符合关键词的内容去除掉(按最大)
${变量%关键词} 从尾对变量进行关键词搜索,并将符合关键词的内容去除掉(按最小)
${变量%%关键词} 从尾对变量进行关键词搜索,并将符合关键词的内容去除掉(按最大)
替换字符串
${变量/旧字符串/新字符串} 将变量中符合旧字符串的内容替换为新字符串 (首次,从左往右数)
${变量//旧字符串/新字符串} 将变量中符合旧字符串的内容替换为新字符串 (全部)