索引

此索引/词汇表/快速参考列表出了本文中涵盖的许多重要主题。术语以近似 ASCII 排序顺序排列,根据需要进行修改以增强清晰度。

请注意,命令已在第 4 部分中索引。

* * *

^ (插入符号)

~ 波浪号

= 等号

< 左尖括号

> 右尖括号

| 管道,一种将命令输出传递到另一个命令或 shell 的设备

|| 逻辑 OR 测试运算符

- (短划线)

; (分号)

: 冒号

! 取反运算符,反转测试或命令的退出状态

? (问号)

// 双斜杠cd 命令对...的行为

. (点/句点)

' ... ' (单引号)引用

" ... " (双引号)引用

,

() 圆括号

[ 左方括号test 结构

[ ] 方括号

[[ ... ]] 双括号,扩展的test 结构

$ 锚点,在正则表达式

$ 变量名的前缀

$( ... ) 命令替换,使用命令输出设置变量,使用圆括号表示法

` ... ` 命令替换,使用反引号表示法

$[ ... ] 整数扩展(已弃用)

${ ... } 变量操作/求值

$' ... ' 字符串扩展,使用转义的字符。

\ 转义后面的字符

&

# 井号,特殊符号,表示脚本注释的开始

#! Sha-bang,启动shell 脚本的特殊字符串

* 星号

% 百分号

+ 加号

* * *

Shell 变量

$_ 上一个命令的最后一个参数

$- 使用 set 传递给脚本的标志

$! 最后一个后台作业的进程 ID

$? 命令的退出状态

$@ 所有位置参数作为单独的

$* 所有位置参数作为单个

$$ 脚本的进程 ID

$# 传递给函数或脚本本身的参数数量

$0 脚本的文件名

$1 传递给脚本的第一个参数

$9 传递给脚本的第九个参数

shell 变量

* * * * * *

-a 逻辑 AND 复合比较测试

地址数据库,脚本示例

Bash 脚本高级指南在哪里下载

别名

变位构词

And 列表

And 逻辑运算符 &&

尖括号转义\< . . . \> 正则表达式中的词边界

匿名here document,使用 :

存档

算术扩展

算术运算符

数组

箭头键,检测

ASCII

awk 面向字段的文本处理语言

* * *

背光,设置亮度

反引号,用于 命令替换

进制转换示例脚本

Bash

.bashrc

$BASH_SUBSHELL

基本命令,外部命令

批处理文件DOS

批处理

bc,计算器实用程序

参考书目

Bison 实用程序

位运算符

块设备

代码块

可引导闪存驱动器,创建

大括号扩展

括号,[ ]

括号,花括号,{},用于

break 循环控制命令

Bash 中的内置命令

* * *

case 结构

cat,连cat接文件

字符设备

校验和

子进程

冒号: ,等效于 true Bash 内置命令

彩色化脚本

逗号运算符,链接命令或操作

命令行选项

command_not_found_handle () 内置错误处理函数(Bash 版本 4+

命令替换

注释头,特殊用途

注释掉代码块

通信和主机

复合比较运算符

压缩实用程序

continue 循环控制命令

控制字符

协进程

cron,调度守护进程

C 风格语法,用于处理变量

纵横字谜求解器

密码学

花括号 {}

* * *

守护进程,在 UNIX 类型操作系统中

date

dc,计算器实用程序

dd数据复制命令

调试脚本

十进制数,Bash 将数字解释为

declare 内置命令

默认参数

/dev 目录

设备文件

dialog,用于在脚本中生成对话框的实用程序

$DIRSTACK 目录堆栈

禁用的命令,在受限 shell

do 关键字,开始执行 循环内的命令

done 关键字,终止循环

DOS 批处理文件,转换为 shell 脚本

DOS 命令,UNIX 等效命令(表格

点文件“隐藏”的设置和配置文件

双括号 [[ ... ]] test 结构

双括号 (( ... )) 算术扩展/求值结构

双引号 " ... " 引用

双倍行距文本文件,使用 sed

* * *

-e 文件存在测试

echo

elifelseif 的缩写

else

加密文件,使用 openssl

esac,终止 case 结构的关键字

环境变量

-eq 整数比较测试,等于

埃拉托斯特尼筛法,用于生成素数的算法

转义字符,特殊含义

/etc/fstab(文件系统挂载)文件

/etc/passwd(用户帐户)文件

$EUID有效用户 ID

eval,组合和求值表达式,带有变量扩展

[[ ... ]] 中八进制/十六进制常量的求值

exec 命令,在重定向中使用

练习

退出和退出状态

Export,使变量可用于子进程

expr表达式求值器

扩展正则表达式

* * *

factor,将整数分解为质因数

false,返回 不成功 (1) 退出状态

字段,构成数据项的字符组

文件 / 归档

文件描述符

文件加密

find

过滤器

浮点数,Bash 无法识别

fold,用于包裹文本行的过滤器

派生 进程

for 循环

函数

* * *

游戏和娱乐

getopt,用于解析脚本命令行参数的外部命令

getopts,Bash 内建命令,用于解析脚本命令行参数

全局变量

Globbing,文件名扩展

黄金比例Phi

-ge 大于或等于 整数比较 测试

-gt 大于 整数比较 测试

groff,文本标记和格式化语言

Gronsfeld 密码

$GROUPS,用户所属的用户组

gzip,压缩实用程序

* * *

哈希,在表中创建查找键

headechostdout文本文件开头的行

help,提供 Bash 内建命令 的用法摘要

Here 文档

历史命令

$HOME用户的主目录

家庭作业解答器

$HOSTNAME,系统主机名

* * *

$Id 参数,在 rcs (版本控制系统) 中

if [ condition ]; then ... test 结构

$IFS内部字段分隔符 变量

整数比较运算符

in关键字 前导[list]for 循环中

初始化表, /etc/inittab

内联组,即代码块

交互式脚本,测试

I/O 重定向

变量的间接引用

iptables,数据包过滤和防火墙实用程序

迭代

* * *

作业 ID,表格

jot,发出整数序列。等同于 seq

又一个 Bash 黑客!

* * *

关键字

kill,通过进程 ID 终止进程

killall按名称终止进程

killall 脚本/etc/rc.d/init.d

* * *

lastpipe shell 选项

-le 小于或等于 整数比较 测试

let,设置和执行变量的算术运算

Limit 字符串,在 here 文档

$LINENO,指示它在脚本中出现的行号的变量

链接,文件(使用 ln 命令)

列表结构

局部变量

本地化

逻辑运算符 (&&, ||,等等)

注销文件,即~/.bash_logout文件

回环设备,在 块设备 上挂载文件

循环

回环设备

-lt 小于 整数比较 测试

* * *

m4,宏处理语言

$MACHTYPE机器类型

魔数,文件头部的标记,指示文件类型

Makefile,包含 make 命令使用的依赖项列表的文件

man手册页(查找)

mapfile 内建命令,将文本文件加载到数组中

数学命令

元含义

摩尔斯电码训练 脚本

取模,算术余数运算符

抵押贷款计算示例脚本

* * *

-n 字符串非 测试

命名管道,一个临时的 FIFO 缓冲区

ncnetcat,用于 TCP 和 UDP 端口的网络工具包

-ne不等于 整数比较 测试

否定运算符!,反转 测试 的含义

netstat,网络统计信息

网络编程

nl,用于为文本行编号的过滤器

Noclobber, -CBash 选项,用于防止文件被覆盖

NOT 逻辑运算符!

变量赋值,避免

* * *

-o 逻辑 OR 复合比较测试

代码混淆

八进制,以 8 为基数的数字

od八进制转储

$OLDPWD 上一个工作目录

openssl 加密实用程序

运算符

选项,通过命令行或 set 命令传递给 shell 或脚本

Or 列表

Or 逻辑运算符||

* * *

参数替换

父/子进程问题进程无法向父进程 导出 变量

圆括号

$PATH路径(系统二进制文件的位置)

路径名,一个文件名包含给定文件的完整 路径

Perl,编程语言

Perquackey 类型字谜游戏Quackey 脚本)

Petals Around the Rose

PID进程 ID,分配给正在运行的进程的标识号。

管道| ,一种将命令的输出传递给另一个命令或 shell 的设备

陷阱

指针

shell 脚本中的可移植性问题

位置参数

POSIX可移植操作系统接口 / UNIX

$PPID,父进程的 进程 ID

优先级,运算符

前置 文件头部的行,脚本示例

质数

printf格式化打印 命令

/proc 目录

进程

进程替换

可编程补全(tab 扩展)

提示符

伪代码,作为解决问题的方法

$PWD,当前工作目录

* * *

Quackey,一个 Perquackey 类型字谜游戏(脚本)

问号,?

引用

* * *

随机数

Raspberry Pi(单板计算机)

rcs

read,从 stdin 设置变量的值

readline

递归

重定向

参考卡片

正则表达式

$REPLY,与 read 命令关联的默认值

受限 shell,shell(或脚本),其中某些命令被禁用

return,终止 函数 的命令

run-parts

* * *

变量的作用域,定义

脚本选项,在命令行设置

脚本例程,有用的定义和 函数

辅助提示符$PS2

安全问题

sed,基于模式的编程语言

select,用于菜单构建的结构

信号量

需要分号,当 do 关键字循环 的第一行时

seq,发出整数序列。等同于 jot

set,更改内部脚本变量的值

Shell 脚本,定义

Shell 包装器,嵌入命令或实用程序的脚本

shift,重新分配 位置参数

$SHLVLshell 级别,shell(或脚本)嵌套的深度

shopt,更改 shell 选项

信号,发送给进程的消息

模拟

单引号 (' ... ') 引用

Socket,与 I/O 端口关联的通信节点

排序

source,执行脚本,或在脚本中导入文件

垃圾邮件,处理

特殊字符

标准差,示例脚本

启动文件,Bash

stdinstdout

秒表,示例脚本

字符串

引用 ' ... '

编写脚本的样式表

子 Shell

su Substitute user,以其他用户或 root 身份登录

suid (set user id) 文件标志

符号链接

交换文件

* * *

Tab 补全

表格查找,脚本示例

tail, echostdout文本文件末尾 (tail) 的行

tar,归档实用程序

tee,在 管道 中途将命令的输出重定向到文件

终端

test 命令

Test 构造

测试运算符

文本和文本文件处理

时间 / 日期

定时输入

Bash 脚本的技巧和提示

$TMOUT,超时间隔

Token,一个可能扩展为 关键字 或命令的符号

tput,终端控制命令

tr,字符转换过滤器

Trap,指定接收到 信号 时的操作

三元 (ternary) 运算符,C 风格,var>10?88:99

true,返回 successful (0) 退出状态

typeset 内建命令

* * *

$UID,用户 ID 号

unalias,删除 别名

uname,输出系统信息

Unicode,用于表示字母和符号的编码标准

未初始化的变量

uniq,从排序文件中删除重复行的过滤器

unset,删除 shell 变量

until 循环

until [ condition-is-true ]; do

* * *

变量

* * *

wait,暂停脚本执行

引号 " ... "

while 循环

while [ condition ]; do

Whitespace,空格、制表符和换行符

who,有关已登录用户的信息

Widgets

通配符

单词分割

Wrapper,shell

* * *

xargs,用于分组参数的过滤器

* * *

yes

* * *

-z 字符串是 null

Zombie,一个已终止但尚未被其杀死 父进程的进程