输入文件:
sip:[email protected]:5060;user=phone
sip:+17738959697;[email protected]:5060;user=phone
sip:[email protected];user=phone
如何使用grep
or获得以下输出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
您真的需要中间的那些空行吗?