awkで、n回目に条件にマッチした行のみに処理を行わせたいことがあったので、備忘として残しておく。 ちなみに、1回目ならこれでOK。

cat test1.txt | awk '/abc/{print $1;exit}'
blacknon@BS-PUB-UBUNTU-01:~$ cat test1.txt
<span style="color: #ff0000;">1 abc</span>
2 bbb
3 ccc
4 ddd
5 eee
6 fff
7 ggg
8 abc
9 bbb
blacknon@BS-PUB-UBUNTU-01:~$ cat test1.txt | awk '/abc/{print $1;exit}'
1

n回目なら、このように何回目のデ-タかを指定してやればいい。

cat test1.txt | awk '/abc/{i++}i==2{print $1;exit}'
blacknon@BS-PUB-UBUNTU-01:~$ cat test1.txt
1 abc
2 bbb
3 ccc
4 ddd
5 eee
6 fff
7 ggg
<span style="color: #ff0000;">8 abc</span>
9 bbb
blacknon@BS-PUB-UBUNTU-01:~$ cat test1.txt | awk '/abc/{i++}i==2{print $1;exit}'
8