linux的shell脚本和基本语法,if语句、for循环语句、while循环语句
一、特殊变量
$n(n代表0以上的正整数,代表参数位)
$? 脚本执行状态,0代表执行成功,其他值代表执行失败。
$# 获取传入参数的个数,常用于循环
$* 所有的参数视为一个整体
$@ 代表所有参数,每个参数分隔开
二、运算符
i=[ (1+1)*2 -5/2 ]
三、条件判断
- test condition
- [ condition ] "["必须要空格,不然会语法错误
在shell中,“空”为假,“非空”为真,即 [ ] 返回false,[ xx ]返回true
(一)常用条件判断
== 用于字符串之间的比较,[ "abc" == "aBC" ]
数字比较
-lt 小于 -le小于等于
-eq等于 -ne不等于
-ge大于等于 -gt大于
(二)按照文件权限判断
[ -e xxx文件 ] 判断文件是否存在
-r 有读权限
-w 有写权限
-x 有执行权限
三、流程控制语句
(一)if语句
!/bin/bash
if [ 1 -eq $1 ]
then
echo "1和第一个参数相等"
elif [ 2 -eq $1 ]
then
echo "2和第一个参数相等"
else
echo "1和2都不和第一个参数相等"
fi
(二)case语句
!/bin/bash
case $1 in
"1")
echo "第一个参数等于1"
;;
"2")
echo "参数等于2"
;;
"3")
echo "参数等于3"
;;
*)
echo "所有条件都不匹配"
esac
(三)for循环语句
第一种形式
!/bin/bash
sum=0
for ((i=0;i<5;i++))
do
echo "Hello World $i"
done
sum=0
for ((i=1;i<=100;i++))
do
sum=$[$i+$sum]
done
echo $sum
第二种形式
!/bin/bash
for i in "$*"
do
echo $i
done
第四种形式
for i in "$@"
do
echo $i
done
(四)while循环
!/bin/bash
i=0
while [ $i -le 5 ]
do
echo "Hello World $i"
i=$[ $i+1 ]
done
i=1
sum=0
while [ $i -le 100 ]
do
$sum=$[ $i+$sum ]
i=$[ $i+1 ]
done
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~