任意の行(2行目から最後から2番の行まで)を取り出す必要があった。そこで bash のスクリプトを作成した。
以下は、其の一部。

a=$( wc file01.txt | awk '{print $1 }' )
b=$(( ${a} - 1 ))                # 何行目まで必要なのか、最終行のひとつ前
c=$(( ${b} - 1 ))                # 必要な行 - はじまりの行 + 1 (別の例で説明)
head -n ${b} file01.txt | taril -n ${c} >> test01.txt

わかりやすい例をあげると、全体で 1000 行のファイルあり、25 行目あから 800 行目を表示したいばあい、
変数 a, b, c はそれぞれ以下の様になる。

a = 1000
b = 800
c = ( 800 -25 + 1) = 776

これをhead と tail にそれぞれ、指定すれば任意の行を抜き出すことがか可能です。

head -n ${b}  file01.txt | tail -n ${c}
広告