マルチギガバイトのテキストファイルを編集できるエディターはありますか?Vimが処理できないようです=(
マルチギガバイトのテキストファイルを編集できるエディターはありますか?Vimが処理できないようです=(
回答:
あなたは* nixの上にある(と、ファイルの一部だけを変更しない(めったに)する必要があると仮定)の場合は、(使用してファイルを分割することができるsplit
コマンド)を、編集個別に(使用してawk
、sed
類似した、または何かを)した後、それらを連結完了しました。
cat file2 file3 >> file1
Ctrl-Cはファイルのロードを停止します。ファイルが十分に小さい場合は、すべてのコンテンツをロードして、ポストロードステップを強制終了できたのは幸運だった可能性があります。このヒントを使用する場合は、ファイル全体がロードされていることを確認してください。
Vimは大きなファイルをかなりうまく処理できます。3.4GBファイルを編集したり、行を削除したりしました。次の3つの点に注意してください。
:115355
すると、行115355に直接移動します。これは、これらの大きなファイルの方がはるかに高速です。Vimは行のバッファをロードするたびに最初からスキャンを開始するようで、Ctrl-Fを押したままファイルをスキャンすると、ファイルの終わり近くで本当に遅くなるようです。注-Ctrl-Cを押したためにVimインスタンスが読み取り専用の場合、Vimがファイル全体をバッファにロードしなかった可能性があります。その場合、ファイルを保存しても、ファイル全体ではなく、バッファ内の内容のみが保存されます。G
ファイルのすべての行がそこにあることを確認するために、最後にスキップするためにaですばやく確認することができます。
それはそれを窒息させているプラグインであるかもしれません。(構文の強調表示、折り目など)
プラグインなしでvimを実行できます。
vim -u "NONE" hugefile.log
それはミニマリストですが、少なくとも慣れ親しんだviモーションを提供します。
syntax off
別の明白なものです。インストールを削減し、必要なものを調達します。あなたはそれが何ができるのか、そしてあなたが他の手段でタスクを達成する必要があるかどうかを知るでしょう。
大きなファイルをロードするときの速度を考慮して、特定のvim機能を無効にするこのVIMプラグインをチェックしてください。
私はSQLダンプにいくつかの小さな変更を加える必要があるときに、主に約1 GBのファイルでそれを試みました。私はWindowsを使用しているので、これは大きな痛みになります。本当に難しいです。
明白な質問は、「なぜあなたはする必要があるのですか?」です。私は何度もこの多くを試してみた経験からあなたを伝えることができ、あなたはおそらく、本当に別の方法を見つけるために試してみたいです。
それで、どうやってそれを行うのですか?私がそれをしたいくつかの方法があります。vimまたはnanoでファイルを開くことができ、それらを使用できる場合があります。それは本当に大変なことですが、うまくいきます。
それが(あなたの場合のように)うまくいかないときは、いくつかのオプションしかありません。小さなプログラムを作成して、必要な変更を加えることができます(たとえば、検索と置換)。あなたはそれを行うことができるかもしれないコマンドラインプログラムを使うことができます(多分それはsed / awk / grep / etcで達成できるでしょうか?)
これらが機能しない場合は、常にファイルをチャンクに分割し(分割のようなものは当然の選択ですが、ヘッド/テールを使用して必要なパーツを取得できます)、それを必要とするパーツを編集します。後で再結合します。
でも私を信じて、別の方法を見つけてみてください。
マルチギガバイトのプレーンテキストファイルを処理するために、Charles CampbellによるLargeFileプラグインを備えたWin7 x64でvim 7.3.3を使用しています。それは本当にうまくいきます。
正しくお越しください。
うわー、1 GBや2 GBでもvimを窒息させることができませんでした。UltraEdit(Windowsの場合)とBBEdit(Macの場合)はさらに大きなファイルに適していると聞きましたが、個人的な経験はありません。
過去に、私はこのツールhttp://csved.sjfrancke.nl/で3ギグファイルを開きました。
個人的に、私はUltraEditが好きです。これが、大きなファイルでの小さな問題です。