|
|
|
@ -309,6 +309,18 @@ num=$((num + 1)) # 变量递增,双括号内的 $ 可以省略
|
|
|
|
|
num=$((1 + (2 + 3) * 2)) # 复杂计算
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##############################################################################
|
|
|
|
|
# 事件指示符
|
|
|
|
|
##############################################################################
|
|
|
|
|
|
|
|
|
|
!! # 上一条命令
|
|
|
|
|
!^ # 上一条命令的第一个单词
|
|
|
|
|
!$ # 上一条命令的最后一个单词
|
|
|
|
|
!string # 最近一条包含string的命令
|
|
|
|
|
!^string1^string2 # 最近一条包含string1的命令, 快速替换为string2, 相当于!!:s/string1/string2/
|
|
|
|
|
!# # 本条命令之前所有的输入内容
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##############################################################################
|
|
|
|
|
# 函数
|
|
|
|
|
##############################################################################
|
|
|
|
@ -526,6 +538,7 @@ n>| file # 强制将文件描述符 n的输出重定
|
|
|
|
|
n<> file # 同时使用文件作为文件描述符 n 的输出和输入
|
|
|
|
|
n> file # 重定向文件描述符 n 的输出到文件
|
|
|
|
|
n< file # 重定向文件描述符 n 的输入为文件内容
|
|
|
|
|
n<<< "hello" # 重定向文件描述符 n 的输入为字符串内容
|
|
|
|
|
n>& # 将标准输出 dup/合并 到文件描述符 n
|
|
|
|
|
n<& # 将标准输入 dump/合并 定向为描述符 n
|
|
|
|
|
n>&m # 文件描述符 n 被作为描述符 m 的副本,输出用
|
|
|
|
@ -535,6 +548,7 @@ n<&m # 文件描述符 n 被作为描述符 m 的
|
|
|
|
|
>&- # 关闭标准输出
|
|
|
|
|
n>&- # 关闭作为输出的文件描述符 n
|
|
|
|
|
n<&- # 关闭作为输入的文件描述符 n
|
|
|
|
|
diff <(cmd1) <(cmd2) # 比较两个命令的输出
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
##############################################################################
|
|
|
|
|