awkの正規表現で先頭と語尾を表現
^:先頭、$:語尾
^:先頭、$:語尾を表現します。
例えば、下記のin.txtがあったとします。
$ cat in.txt babc aaaabc aaaab
^a.*c$は、先頭がa、語尾がcを表現できるので、
aaaabc が該当します。
^a:先頭がa
.*:0文字以上の文字列
c$:語尾がc
サンプルコード
下記がサンプルコードになります。
$ cat sample.sh
#!/bin/sh
cat in.txt | awk '
{
match($0, /^a.*c$/)
print substr($0, RSTART, RLENGTH)
}
'
下記が実行結果になります。
$ ./sample.sh aaaabc
