3

sed したい文字列 盗聴された着信パケットから取得...文字列から部分文字列を取得したい、fe

INVITE sip:18455845013@192.168.192.253:5060 SIP/2.0

を使用しsedて、部分文字列を抽出したいと思います。部分文字列はと
の間です ... したがって、私の例では、取得する必要がありますsip:@

18455845013
4

3 に答える 3

1

フラグをgrepサポートしている場合は、次を試してください。-P

grep -oP '(?<=sip:)[^@]*'

結果:

18455845013

sedそれ以外の場合は、Steven Penny が行ったように使用してください。HTH。

于 2013-04-12T06:25:12.340 に答える
1

: と @ の間のビットを保持します。

sed 's/.*:\(.*\)@.*/\1/'

例:

$ echo "INVITE sip:18455845013@192.168.192.253:5060 SIP/2.0" | sed 's/.*:\(.*\)@.*/\1/'
18455845013
于 2013-04-12T06:52:50.827 に答える