它会忽略-d选项后的位,因为你不能在2和q之间按词汇排列字符吗?
发布于 2014-09-29 19:36:41
是的,字符可以排列在2和q之间。做一个ls /bin,你会看到数字出现在字母之前。实际上,您可以做ls /bin/[2-q]*并亲自查看发生了什么。
"C“语言环境中的词法排序是通过ASCII值进行的,因此'2‘是小数点32,'q’是71。执行一个man ascii来查看整个ASCII表。
也许你是想问,如果你指定了一个非法的词汇范围,会发生什么?你可以试试:
%1!/bin/q-2* ls:无法访问/bin/q-2*:没有这样的文件或目录
当然,您的shell正在扩展该模式(也称为"filename扩展“),因此您看到的错误可能取决于您的shell和shell选项。在我的例子中,我使用了zsh,并设置了zsh选项来传递不能直接扩展到正在调用的命令的模式,而不是生成一个会中止命令执行的shell错误。
https://unix.stackexchange.com/questions/158279
复制相似问题