人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

1GBを越えるような大きなSQLファイルのうち、一部分だけを変えたいです。
(例:SQLファイルの10?100行目くらいにAAAと書かれた部分があるので、それをBBBと直したい。ただし、他の行に含まれているAAAは直したくない)
どういうやり方がベターでしょうか。

※質問の仕方が悪かったようなので、文章を変えて再投稿してみました。


●質問者: studio15
●カテゴリ:ウェブ制作
✍キーワード:AAA SQL ファイル ベター 投稿
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● dev_zer0
●27ポイント

http://www.k3.dion.ne.jp/~jod/viusage.html

viで十分のような気がします。

10行目?100行目までのAAAという文字列をBBBに置換したいだけならば

:10,100s/AAA/BBB/g

で可能です。


2 ● y-kawaz
●26ポイント

適当なプログラムでフィルタすればいいんじゃないでしょうか。

例えばLinuxでperlコマンドを使って以下のような感じでどうでしょう?

cat 1GB.sql | perl -pe '$lno++;if(10<=$lno&&$lno<=100){s/AAA/BBB/g}' > 1GB_2.sql

行番号 $lno が10以上100以下のときだけ正規表現で置換しているだけです。

http://q.hatena.ne.jp/answer

◎質問者からの返答

この方法が良いような気がするので試しにやってみます。


3 ● ひでと
●27ポイント

修正個所がごく限られているなら、バイナリエディタを使ってみてはどうでしょうか?

下記エディタなら該当個所のみロードするので、巨大なファイルでも一瞬で開けますよ。

http://www.zob.ne.jp/~c.mos/soft/bz.html

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ