sed -e 's|.* -> ../../\(.*\)$|\1|'是什么意思?

sed-e's|.*->../../\(.*\)$|\1|'的具体作用是什么,最好有例子... sed -e 's|.* -> ../../\(.*\)$|\1|'的具体作用是什么,最好有例子 展开
 我来答
cnbubble
2018-01-18 · TA获得超过2606个赞
知道大有可为答主
回答量:1990
采纳率:83%
帮助的人:747万
展开全部

-e选项,这里没什么作用,可以不写(可以查看sed帮助-e的介绍)

引号里面是sed的替换命令,常见的是 s/正则表达搜索/替换为/

将“替换为”字串替换“正则表达搜索”到的字符串。这里分隔符改为了竖线  |

正则搜索项:

.* -> ../../\(.*\)$

.*——任意字符

-> ——原样匹配,->并且前后有一个空格

../——两个任意字符,加上一个/字符

../——同上

\(.*\)——匹配任意字符,并且放在了捕获括号中

$——字符串结束位置

替换为:\1——引用前面正则表达式中第一个捕获括号里面的内容

整个意思是找到能匹配正则的内容,并用后面的一部分替换整个匹配,示例:

上面的示例得到了整个字符串最后面的一部分内容。

追问
-> 原样匹配是说就是直接用,没有什么其他的意义吗
追答
在这里,->没有特殊意义,横线在中括号[   ]中,可以表示范围,比如0-9
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式