假设我有几行输出,如下所示:
blah <foo> I want this
baz < nom> I want this too
bit <@hi> And this...
如何使用awk切断所有内容,包括第一个“&gt;”每一行的角色?
答案 0 :(得分:2)
如果您只有>
字符,则可以进行简单的sed
替换:
sed 's/.*>//' file
如果可能有许多上述贪婪(*
)将消耗最后一个>
字符的所有内容。在这种情况下,你最好这样做:
sed 's/[^>]*>//' file
答案 1 :(得分:2)
这可能会(如果你有一个>
)
awk -F\> '{print $2}' file
I want this
I want this too
And this...
答案 2 :(得分:2)
让我们不要忘记削减,这就是它的发明:
cut -d\> -f2- file
答案 3 :(得分:0)
使用awk你可以这样做:
awk '{sub(/^[^.]*>/, "");} 1' file
I want this
I want this too
And this...
或者使用sed:
sed 's/^[^.]*>//' file
I want this
I want this too
And this...
答案 4 :(得分:0)
试试这个:
awk -F">" '{print $1">"}' filename