从perforce输出中仅提取库路径

Th3*_*m4n 2 regex perforce

已经尝试了一些"提取到一个角色"的问题,没有一个工作.在grep -o中使用它

示例输入://blah/blah/foo.txt#7 - 由blah @ blah编辑更改12526(文本)

我想得到://blah/blah/foo.txt

现在我正在使用正则表达式'/ [^#]*/'但是我得// blah/blah /

Nem*_*emo 5

grep 不使用斜杠来分隔模式,因此斜杠字面上是匹配的.

尝试:

echo '//blah/blah/foo.txt#7 - edit change 12526 (text)' | grep -o '/[^#]*'
Run Code Online (Sandbox Code Playgroud)

请注意,如果"text"中有一个斜杠,那么该部分也将匹配,因此将打印出来grep -o.所以我会用这样的东西:

echo '//blah/blah/foo.txt#7 - edit change 12526 (text)' | sed 's/#.*//'
Run Code Online (Sandbox Code Playgroud)

(当然,这两个都假设你的文件名中没有#.)