考虑以下命令来覆盖历史扩展字符(我从使用 ZSH 学习 Shell 脚本书):
% set histchars='@^#'
% ls *.txt
file1.txt file2.txt
% @@
结果:
zsh: command not found: @@
然而,这是有效的(注意set
被省略):
% histchars='@^#'
% ls *.txt
file1.txt file2.txt
% @@
结果:
ls *.txt
file1.txt file2.txt
我用我的 shell.zshrc
和 vanilla shell ( zsh --no-rcs
) 都尝试过,结果是一样的。
问题:set ...
书中的语法是否错误,或者我遗漏了什么?