Linux 如何从字符类的范围中排除字符?
如何为一个字符组合以下行:Linux 如何从字符类的范围中排除字符?,linux,bash,unix,wildcard,Linux,Bash,Unix,Wildcard,如何为一个字符组合以下行: > ls file[1-5] > ls file[!3] 产生与以下相同的结果: > ls file[1-2,4-5] > file1 file2 file4 file5 范围的正确语法是 ls file{[1-2],[4-5]} 这当然会因环境而有所不同。在zsh中,您可以执行以下操作: $ set -o EXTENDED_GLOB $ ls file([1-5]~3) 文件[1-2,4-5]已经是有效的模式。我认为问题在于如何指定
> ls file[1-5]
> ls file[!3]
产生与以下相同的结果:
> ls file[1-2,4-5]
> file1 file2 file4 file5
范围的正确语法是
ls file{[1-2],[4-5]}
这当然会因环境而有所不同。在
zsh
中,您可以执行以下操作:
$ set -o EXTENDED_GLOB
$ ls file([1-5]~3)
文件[1-2,4-5]
已经是有效的模式。我认为问题在于如何指定单个模式,而不必详细说明每个子序列。