匹配后获取所有内容的grep命令是什么? 例如,在文件路径上:
/home/usr/we/This/is/the/file/path
我希望输出为
/we/This/is/the/File/Path
匹配/我们作为正则表达式。
答案 0 :(得分:2)
grep -o
做你想做的事。
grep -o '/we.*'
答案 1 :(得分:1)
YourInput | sed 's|/home/usr\(/we.*\)|\1|'
假设它始终(并且仅)以/ home / usr开头 其他
YourInput | sed -n 's|^.*\(/we.*\)||p'
仅返回包含/ we的行,并在/we
答案 2 :(得分:1)
OP喜欢使用we
作为触发器。使用awk
awk -F/ '{for (i=1;i<=NF;i++) {if ($i~/we/) f=1;if (f) printf "/%s",$i}print ""}' file
/we/This/is/the/file/path
使用gnu awk
awk '{print gensub(/.*(\/we)/,"\\1","g")}' file
/we/This/is/the/file/path