私は簡単な仕事をしています:
そのような出力から:
[root@localhost:~]# racoonctl -s /var/racoon/racoon.sock ss isakmp
Destination Cookies Created
89.208.102.86.500 d0a641ed0aa7bfe9:7ae3428b08fab146 2013-02-04 15:32:18
IP アドレス文字列と日付文字列のみを取得する必要があります (異なる要求で)。
IP については、次の正規表現を書きました。
[root@localhost:~]# racoonctl -s /var/racoon/racoon.sock ss isakmp | sed -ne 's/^\(\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}\).*/\1/p'
89.208.102.86
しかし、日付は機能しません
[root@localhost:~]# racoonctl -s /var/racoon/racoon.sock ss isakmp | sed -ne 's/^.*\([0-9]\{4\}\(\-[0-9]\{2\}\)\{2\}\ \([0-9]\{2\}:\)\{2\}[0-9]\{2\}\)$/\2/p'
[root@localhost:~]#
エラーがどこにあるのか理解できませんか?
また、フラグ -r を使用して /(expression/) と /{expression/} を変更したいのですが、どうすればよいかわかりません
前もって感謝します
PSまた、代替バリアントについても知っています:
[root@localhost:~]# racoonctl -s /var/racoon/racoon.sock ss isakmp |awk -F\. '/[0-9]/ {print $1"."$2"."$3"."$4}'
89.208.102.86
[root@localhost:~]# racoonctl -s /var/racoon/racoon.sock ss isakmp | awk '/[0-9]/ {print $3 " " $4}'
2013-02-04 15:32:18
しかし、将来のハドリータスクのために、sedでやりたいです。