修剪两个分隔符之间的行

修剪两个分隔符之间的行

输入文件:

sip:[email protected]:5060;user=phone
sip:+17738959697;[email protected]:5060;user=phone
sip:[email protected];user=phone

如何使用grepor获得以下输出sed

    +16309608112

    +17738959697;npdi

    7739469234

答案1

使用awk:

awk -F'[:@]' '{print $2}' file
+16309608112
+17738959697;npdi
7739469234

答案2

这应该可以满足您的要求:

$ cat /tmp/your/input | sed -e 's/.*:\(\S\+\)@.*/\1/g'
+16309608112

+17738959697;npdi

7739469234

答案3

cut也可以使用:

cut -d: -f2 file | cut -f1 -d@
# output
+16309608112
+17738959697;npdi
7739469234

您真的需要中间的那些空行吗?

相关内容