• 締切済み

文字列の抽出について

A列に 500行位の文字列があり、 その行の中から以下を抽出したいです。 ただ、抽出したい文字列は、0123456で始まり、abcdという文字列まで。 しかも改行されています。 ※抽出したい文字列 【A列 0123456 ~ B列 abcd】という文字列 【F列 0123456 ~ B列 abcd】という文字列 A列 0123456 B列 xxxx abcd C列 1111 D列 2222 E列 3333 F列 0123456 G列 xxxx abcd H列 4444 I列 5555 J列 6666 宜しくお願い致します。

みんなの回答

回答No.2

awkでゴリッと書くことが出来ます。 $ cat 入力ファイル | awk '/^0123456/{t=1} t{print$0} /abcd$/{t=0}' 0123456で始まる行から、abcdで終わる行まで、を意図して書きました。 0123456を含む行のその位置から、abcdを含む行のその位置まで、であれば、 $ cat 入力ファイル | sed 's/^.*0123456/0123456/' | sed 's/abcd.*$/abcd/' | awk '/^0123456/{t=1} t{print$0} /abcd$/{t=0}' 等とすれば行けるような気がしますが、試してません。

参考URL:
http://okwave.jp/qa/q8147074.html
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

sed -n '/0123456/,/abcd/p' ファイル名

関連するQ&A