我遇到了这个命令:
ls -l <directory> | tail -n +2 | sed 's/\s\s*/ /g' | cut -d ' ' -f 3 | sort | uniq -c
Run Code Online (Sandbox Code Playgroud)
我不是100%肯定,如果我理解的目的\s\s*
的sed
选项。
我知道这\s
是指一个空格。由于第二个\s
在*
,这使得第二个空格匹配零次或多次。
这是否意味着sed
用单个空格替换输入流中的一个或多个连续空格?如果是,为什么不直接使用\s+
代替\s\s*
?