rg -g "*.py" "import" 其中 为什么py 跟import之间不加, 这个规则是哪里定义的?
这是一个非常深刻的问题,触及到了计算机操作系统的底层逻辑。
直接回答你:这个规则是由你的“Shell(命令行解释器)”定义的,而不是 ripgrep 这个软件定义的。
所谓的 Shell,就是你平时用的 bash (Mac/Linux默认), zsh, PowerShell (Windows), 或 cmd.exe。
以下是详细的层级解释,告诉你这个规则到底“写在哪里”:
1. 第一层:Shell 的语法定义(分词规则)
当你敲下一行命令并回车时,在 ripgrep 启动之前,Shell 会先对你输入的字符串进行“手术”(解析)。
Shell 的最高法则(POSIX 标准)规定:空格(Space/Tab)是默认的“分隔符” (Delimiter)。</