»sedででかいファイルを扱うときについてDNSのシステムにtinydnsというコンパクトな設計のDNSがあります。ファイルで管理しているのですが、BINDと比べて設定行が非常に少ないのが特徴です。Aレコードと逆引きの設定は一行で済みます。=mod-cband.heteml.jp.:210.188.195.42これだけです。あとはtinydnsに付属するzone-makeコマンドを実行するだけです。コンテンツサーバーの設定自体はもう少しあるのですが、割愛します。今日の本題はsedです。上記のように簡単な記述でできるファイルも時が経てば巨大なファイルになります。数百万行のファイルができてもおかしくありません。このようなときに特定の行だけ削除したいなと思っても楽ではありません。今回はagとsedで解決します。想定としては数百万行のファイルのどこかにある”mod-cband.heteml.jp”というドメインを削除することです。agのインストールはglidenoteさんのサイトを参考にするといいと思います。#dataとはDNSのレコードが記述されているテキストファイルです。1295883:=mod-cband.heteml.jp:210.188.195.421295884:Cmod-cband.heteml.jp:users87.heteml.jp.記述されている行数が分かりました。このときに直接消さない理由として確認をするためです。dataこれで指定した行だけが削除されるので、その後の数百万行の処理は飛ばされます。(sedは一行ずつ処理していくので指定がないと最下行まで見に行きます)では本当に消えたのか指定した行だけを表示させてみます。data1295883:=not-cband.heteml.jp:210.188.195.421295884:Cnot-cband.heteml.jp:users87.heteml.jp.このように次の行が繰り上がります。※heteml.jpさんがtinydnsを使っているかどうかは分かりませんが、digなどで調査したレコードを参考に記述しています。data1234行目から最終行までをだしています。最終行は$で表します。