zsh 中的重复命令语法

6 zsh syntax

我从 zsh 开始,我使用本手册

重复的语法表示为:

重复单词列表完成

但是我注意到:

repeat 5 echo ok
Run Code Online (Sandbox Code Playgroud)

也工作正常。

尽管如此,这种遗漏在这里是不合法的:

~ % f() { for a ; do echo $a; }
zsh: parse error near `}'
Run Code Online (Sandbox Code Playgroud)

所以问题是,这是代码中的漏洞还是有效的遗漏?可以依赖吗?我看到它在代码示例中很受欢迎。

repeat在 zsh 的男人中搜索过,但显然什么都没有。无论如何,正确的 zsh 文档是什么?

llu*_*lua 5

repeat word do list done
Run Code Online (Sandbox Code Playgroud)

确实是重复的语法,现在尝试阅读第 6.4 节 - 复杂命令的替代形式,注意警告:

这些是非标准的,即使对于经验丰富的 shell 程序员也可能不明显。

重复词子列表

这是重复的简短形式。