当前位置:首页>Linux>Linux Shell速查表:Bash脚本编程核心知识大全

Linux Shell速查表:Bash脚本编程核心知识大全

  • 2026-08-23 00:26:25
Linux Shell速查表:Bash脚本编程核心知识大全

在Linux系统中,使用Bash脚本实现任务自动化是最强大的功能之一。然而,由于脚本组件繁多,初学者常常望而却步,即使是经验丰富的用户也难免会忘记某些语法细节。为此,今天我们精心整理了这份Bash脚本编程速查表,帮助你在编写脚本时快速查阅所需的命令、运算符和条件语句等。

1.基础语法

以下是Bash脚本中最基本的概念和语法,适合初学者快速入门:

语法描述
#!/bin/bash
必须写在每个Bash脚本的第一行
#
注释符号,其后内容不会被执行
chmod +x script.sh && ./script.sh
赋予脚本执行权限并运行
$#
存储传递给脚本的参数个数
$1
, $2, $3
存储传递给脚本的各个参数值
exit
退出脚本,可选择性添加错误码
Ctrl + C
组合键,强制中止正在执行的脚本
$( )
在子shell中执行命令
sleep
暂停指定的秒数、分钟、小时或天数

2.条件判断语句

条件判断语句(if和case)允许我们检查某个条件是否为真,并根据结果决定脚本的执行路径。

#  if语句结构

语法描述
if then fi
测试条件,如果为真则执行then子句
if then else fi
条件为真执行then子句,否则执行else子句
if then elif else fi
测试多个条件,执行第一个为真的子句

# 下面是基本if示例脚本:

#!/bin/bash

if [ $1 -eq $2 ]; then
echo"两个数字相等"
else
echo"两个数字不相等"
fi

# 下面是case语句示例

case语句适合处理多分支选择的情况:

#!/bin/bash

day=$(date +"%a")

case$dayin
  Mon | Tue | Wed | Thu | Fri)
echo"今天是工作日"
    ;;
  Sat | Sun) 
echo"今天是周末"
    ;;
  *)
echo"无法识别的日期"
    ;; 
esac

3.循环语句

循环语句让脚本可以在条件为真时重复执行一组指令:

语法描述
for do done
根据预设的次数、文件列表等进行循环
until do done
一直循环直到某个条件为真
while do done
只要条件为真就持续循环
break
退出整个循环,继续执行脚本后续部分
continue
退出本次迭代,继续执行下一次循环

4.读取用户输入

# 交互式输入

使用read命令提示用户输入信息:

#!/bin/bash

read -p "请输入你的名字: " name

echo"欢迎阅读本教程,$name"

# 解析脚本参数

#!/bin/bash

if [ $# -ne 2 ]; then
echo"参数数量错误,请输入两个参数"
exit 1
fi

echo"你输入的两个参数是:$1 和 $2"

5.算术运算符

算术运算符让我们能在脚本中执行基本的数学运算:

运算符描述
+
加法
-
减法
*
乘法
/
除法
%
取余(模运算)
**
乘方
((i++))
变量自增
((i--))
变量自减

6.算术条件运算符

算术条件运算符用于比较两个数字的大小关系:

运算符描述等效符号
-lt
小于
<
-gt
大于
>
-le
小于等于
<=
-ge
大于等于
>=
-eq
等于
==
-ne
不等于
!=

注意:

左侧的运算符(如-lt)可用于单括号[ ]或双括号[[ ]],而右侧的符号(如<)只能用于双括号。

7.字符串比较运算符

字符串运算符用于判断字符串是否为空,或比较两个字符串的关系:

运算符描述
=
相等
!=
不相等
<
小于(按字典顺序)
>
大于(按字典顺序)
-n s1
字符串s1不为空
-z s1
字符串s1为空

8.文件测试运算符

在Bash中,我们可以测试文件或目录的各种属性:

运算符描述
-b filename
是否为块特殊文件
-c filename
是否为字符特殊文件
-d directoryname
检查目录是否存在
-e filename
检查文件是否存在
-f filename
检查是否为常规文件(非目录)
-G filename
文件是否存在且属于有效组ID
-g filename
文件是否存在且设置了组ID
-k filename
是否设置了粘滞位
-L filename
是否为符号链接
-O filename
文件是否存在且属于有效用户ID
-r filename
检查文件是否可读
-S filename
是否为套接字文件
-s filename
文件是否存在且大小不为零
-u filename
文件是否设置了用户ID位
-w filename
检查文件是否可写
-x filename
检查文件是否可执行

9.布尔运算符

布尔运算符用于组合多个条件进行逻辑判断:

语法描述
&&
逻辑与(AND),所有条件为真才为真
||
逻辑或(OR),任一条件为真即为真
!
逻辑非(NOT),取反操作

最新文章

随机文章