假设我有文件树
-A_dir/
- a_test_file1
执行mv a_test_file1 a_test_file2
会导致恼人的更正查询。 mv
的第二个参数永远不应该被纠正,因为它可能会或可能不会指向文件系统上的现有节点。但是,第一个参数可能会被更正,因为它必须始终是一个有效的节点。
这是一个常见的用例,我只希望zsh
更正命令中的某些参数。我怎样才能做到这一点?
答案 0 :(得分:0)
将此作为答案,因为评论的文字过多......但这确实是一个评论。
老实说,粗略阅读一本手册表明,如果没有深刻的讽刺,这是不可能的。 correct
更正命令,correct_all
尝试更正所有参数。
我想过做像
这样的事情function mv {
emulate -L zsh
CORRECT_IGNORE='*'$@[-1]'*'
command mv $@
}
但它不起作用,因为CORRECT_IGNORE
不适用于文件名的更正。如果您可以从参数列表中找到如何生成更正,则可以为要更正的所有参数生成更正,然后调用nocorrect mv ...
。