質問

2009年09月23日 01時12分
  • 2G超テキストファイルの文字列一括置換

情シスのオープンナレッジ『Syszo』サービス終了のお知らせ

質問

2G超テキストファイルの文字列一括置換を行いたいのですが、
短時間、かつスマートに実行をご存知でしたら教えていただけないでしょうか。

ある巨大なCSV形式のファイルをSQLServerにBCP経由で読み込みたいのですが、
nullを示す文字が「\n」となっており、それを全部置換したいのです。

よろしくお願いします!

3件の回答があります

回答

テキストエディタで「ファイルサイズはメモリ次第」というのでやってみるですね。
私は emエディタ フリー ですが 2GBのテキストファイルはやったことがないです。

2009年09月23日 14時43分

回答

こんにちは。

sedを入れてみてはいかがでしょうか?

sed s/\n/置換後の文字列/g before.csv > after.csv

もしソフトを入れたくないのでしたら、ここを参考にwshを使うとか
http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/feb05/hey0208.mspx

ReradAllを使っているのでリソースが無いと巨大ファイルは無理かもしれません。ReadLine等を使って適当に書き直して下さい。

2GB程度でしたら、最大編集行を増やせば秀丸エディタでなんとかなりそうですが。

2009年09月23日 23時29分

回答

実際に試した事はありませんが、「EmEditor Professional 8」の試用版(30日間の試用期限)でお試しになってみてはいかがですか?

「巨大ファイル コントローラー」という機能で、『248 GB よりもさらに大きなファイルを部分的に開くことができるようになりました』との事です。

2009年09月24日 02時37分

あなたもコメントしましょう!