Zsh 参数和命令替换的混合

Zsh 参数和命令替换的混合,zsh,substitution,Zsh,Substitution,我找到了这段代码(简化) 从这里 我不理解表达式“${(q)item}” 什么是变量q,我没有找到它的任何声明,它是命令替换吗?为什么括号用在大括号内?此构造的含义是什么?在${/code>指定之后立即插入括号。使用q标志在扩展中引用特殊字符 在结果字中用反斜杠引用shell特有的字符;不可打印或无效字符用$'\NNN'形式引用,每个八位字节用单独的引号引起来 这是zsh,而不是bash。请参阅zsh手册中的。 while read item; do echo -n "${(q)item}

我找到了这段代码(简化)

从这里

我不理解表达式
“${(q)item}”


什么是变量
q
,我没有找到它的任何声明,它是命令替换吗?为什么括号用在大括号内?此构造的含义是什么?

${/code>指定之后立即插入括号。使用
q
标志在扩展中引用特殊字符

在结果字中用反斜杠引用shell特有的字符;不可打印或无效字符用$'\NNN'形式引用,每个八位字节用单独的引号引起来


这是
zsh
,而不是
bash
。请参阅
zsh
手册中的。
while read item; do
  echo -n "${(q)item} "
done