此命令中的 -.*$/ 是什么意思?请帮我破译这个。
echo -n full | sed -e "s/-.*$//"
Run Code Online (Sandbox Code Playgroud)
我知道 sed 的作用以及所有这些,我只想知道 -.*$ 部分是什么。
小智 9
.代表任意字符,*表示匹配前一个匹配的任意数量(0 到无限之间),$代表行尾。所以这个 sed 命令将匹配-其后的所有字符,直到它找到行尾并将其替换为空,即删除它。
例如:aajaaa-woijsdfljkwe94变成aajaaa
另外,应该注意的*是'greedy',这意味着它将匹配尽可能多的字符。因此,例如:alasdf-slwddo-sdf变成alasdf,而不是alasdf-slwddo。
| 归档时间: |
|
| 查看次数: |
510 次 |
| 最近记录: |