正規表現の書式

"show log"コマンド実行時に正規表現により文字列を抽出する際の書式。

SEILのログ参照コマンドは、正規表現1 による行の抽出に対応しています。ここでは、正規表現によるログの抽出について簡単な例を挙げて説明します。 正規表現の詳細については、市販の書籍等を参照してください。

show log regexp <regexp>
  • <regexp>に指定した文字列を含む行のみ抽出して表示します
  • 英数字はそのままの文字として扱われます
  • 記号の一部は特殊な意味を持ちます
1: 特殊な意味を持つ記号文字(一部)
記号 意味
. 任意の1文字を意味する
* 直前に書かれている文字が0文字以上任意個数連続で並ぶことを意味する
+ 直前に書かれている文字(あるいは文字列)が1文字以上任意個数連続で並ぶことを意味する
? 直前に書かれている文字(あるいは文字列)が0あるいは1個存在することを意味する
\ 直後に書かれている文字の特殊効果を打ち消し通常文字として扱う
^ 先頭に書くことで文字列の先頭から次の表現を比較していくことを意味する
$ 末尾に書くことで直前の表現をもって行末となることを意味する
| 前後の文字列のいずれかに一致することを意味する

入力例

show log regexp ipsec0|pppoe0
'ipsec0'または'pppoe0'という文字列を含む行を抽出します。
show log regexp 192\.168\.
'192.168.' という文字列を含む行を抽出します。'\'により'.'文字の特殊効果を打ち消さない場合、'19231689' といった文字列も抽出してしまいます。
show log regexp "Dec +2 "
12月2日のログを抽出します。' +'により'Dec'と'2'の間にスペースが1個以上並ぶことを条件とし、'2'の後に スペースを含めることにより21や22といった文字列を除外しています。
1 POSIX 1003.2 regular expressions の extended REs に準拠