Zsh

Weirane讨论 | 贡献2021年4月15日 (四) 23:38的版本 (建立内容为“== 变量 == Zsh 变量无需加引号。如需要按照空格分割,使用 {{code|zsh|2=$=variable}} 或者 {{code|zsh|2=${=variable}<nowiki/>}}。 === 变…”的新页面)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

变量

Zsh 变量无需加引号。如需要按照空格分割,使用 $=variable 或者 ${=variable}

变量展开选项

${(FLAG)variable}。参考 14.3.1 Parameter Expansion Flags。也可通过打出 ${( 然后查看补全信息。

常用选项:

F
用换行符连接数组元素
j:string:
string 连接数组元素。如果 string 中包含 :,可将两个 : 换成其它字符,只要两字符相同。
s:string:
string 分割变量内容
q
将特殊符号用反斜线 escape
q-
将特殊符号用单引号包裹
Q
去掉一层反斜线 escape
k
一个关系数组(associative array)的所有键(key)
kv
一个关系数组的键和值(value)

数组下标选项

$array[(FLAG)...]

数组

Zsh 数组下标从 1 开始。

在数组最前加入一个元素(prepend)

array=($ele $array)

在数组最后加入一个元素(append)

array=($array $ele)
# 或者
array+=($ele)