- 締切済み
文字列の抽出について
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 宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- pixie-grasper
- ベストアンサー率49% (28/57)
回答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}' 等とすれば行けるような気がしますが、試してません。
- notnot
- ベストアンサー率47% (4900/10358)
回答No.1
sed -n '/0123456/,/abcd/p' ファイル名