いつもお世話になっています。
愚問ですが、ご存知の方、ご回答をお願いします。

あるシステムを運用している中で、今迄誰も気が付かず
膨れ上がってしまったログファイル(テキスト)が4GB程あります。

これらを参照したいと思うのですが、当然のごとく
メモリオーバーが発生し開く事ができません。
このような大きいファイルを参照する術はありますでしょうか?
(あくまでも過去分を見たいので、このファイルを開きたいです)

##環境##
OS  Windows2000
CPU Celeron1.7GHz
メモリ 254MB

足りない情報があればご指摘下さい。
どうぞ、よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (6件)

    • good
    • 1
この回答へのお礼

ありがとうございました。

お礼日時:2005/06/04 08:49

通常のWindowsは単一のプロセスが使えるメモリの上限が4GBでそのうち2GBはOSのための領域です。


通常のエディタはほとんどがメモリにファイルを全て読み込むためどうがんばっても2GB弱のファイルしか扱えません。
また、ビュアーも特に明示していない限りファイルサイズ2GBか4GBの制限があると思ったほうが無難と思われます。
プログラム的に変数のサイズが32bitでは扱えないサイズである、APIのパラメタが32bitとそれ以上で異なるため、意識して作らないと対応できないからです。


なんらかの方法でファイルを分割するのが最も現実的な方法だと思います。

私なら、awkか何かのスクリプト言語で行数していして分割してエディタで見ると思います。
    • good
    • 1
この回答へのお礼

ありがとうございました。

お礼日時:2005/06/04 08:49

「先頭の方だけ見たい」なら、TYPE結果をリダイレクトして別ファイルを作るのはどうでしょう?


パスは適宜修飾ください。

1.コマンドプロンプトを開く
2.TYPE 4GB.txt > 切り出し.txt
3.「ちょっと待った後」Ctrl+Cで中断。

※3で待ち続けると同じ物ができてしまいます。適当に中断してください。
    • good
    • 6
この回答へのお礼

ありがとうございました。

お礼日時:2005/06/04 08:49

参考URLはベクターのサイトですが「巨大 ファイル」で検索すると、巨大ファイル分割ツールやビューワがヒットします。


参照するだけならビューワを使い、編集したいなら一旦分割して……ってやり方で良いのでは?

参考URL:http://www.vector.co.jp/
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2005/06/04 08:49

テキストエディタ(シェアウェア等)を探せば,対応したものがあると思います



秀丸エディタは1000万行の編集が可能とありますが,ファイルの最大容量は見つけられませんでした

作者へ問い合わせれば回答があると思います

参考までに
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2005/06/04 08:48

ファイルサイズが大きくてテキストエディタで開けないのであれば、ワードパッド等の別のアプリケーションで開けばよいのではないでしょうか。


Windows2000が今手元にないので定かではないですが、右クリックで「アプリケーションから開く」があれば、そこでWordPadを選択、もしくはWordPadを起動してそこからtxtファイルを開けばOKです。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2005/06/04 08:48

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q大きいサイズのファイルを編集するエディタ

こんにちは。

今、大きいサイズのファイルを編集したいと思っているのですが、
色々検索して探して見たものの見つかりません。

サクラエディタ、terapadなど試してみたのですが、
ファイルが大きすぎるため、ダメでした。
また大きいファイルを見るためのビューア(GigaReader)はあったのですが、編集ができずで・・・

1G~3Gのファイルを編集できるエディタで、
出来ればフリーウェアでと思っています。
ご存知の方がいらしたら、よろしくお願いします。

Aベストアンサー

EmEditor Freeは試してみました?

http://www.forest.impress.co.jp/lib/offc/document/txteditor/emeditor.html

一応扱えるファイル容量は無制限、ということです。
試してみてはいかがでしょうか。

http://jp.emeditor.com/modules/feature1/

開発中のバージョン7では、より高速に大容量のテキストファイルを扱えるようになった、そうです。Professional版のみコールされていますが…Free版としてのリリースの可能性も十分あると思います。

Q250万行1ギガbのテキストデータを分割して、それぞれテキストファイルとして保存したい

250万行1Gbのテキストデータを分割して、それぞれテキストファイルとして保存して、
アクセスやエクセルで開きたい。

当方、VISTAです。
250万行1Gbのテキストデータを分割して、それぞれテキストファイルとして保存して、アクセスやエクセルで開きたいです。

ソフト「ファイル裁断+」だと、分割できましたが、テキストファイルでない形式なので、結局、再マージするしかないかと・・・
ソフト「div」は、なぜか、実行中の後、データが消えてしまいます。データが重すぎるのか、VISTAだからなのか・・・
ソフト「Em Editor」で、地道に切り取り→貼り付けして分割しようにも、10万行とかの貼り付けはできないようです。
ちゃんと起動してくれるなら、有料でもかまいません・・・

どうぞ、よろしくお願い致します。

Aベストアンサー

「ファイル裁断+」というソフトは見つからなかったので仕様が分かりませんが、分割することでテキストがテキストでなくなるということは通常考えられません。
単に拡張子が変わっただけなのをテキストでなくなったと判断していませんか?
切れ目にかかった全角文字が化けるか、その先1行全部化けるくらいのことはあるでしょうが、これは切る場所を変えて繋ぎ合わせれば解決できる問題です。

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

Q重くて開かないEXCELファイルを何とかして開きたい

手元にあるEXCELファイルが非常に重く、
開いてる途中でCPU使用率が100%になったまま固まってしまい、
開くことができません。

そのブックの中には2枚のシートが含まれており、
そのうち1枚のどこでもいいので1行のデータが見たいのです。
(列数はかなり多めです)
ただ、結果数字ではなく計算式が欲しいので、
CSVに変換するソフトでは使えません。

フリーの桔梗というソフトは凍ってしまいました。
Toraフィルターというソフトだと凍らずに、
項目名までは出てくるのですが、
null値が含まれているというエラーが出てしまいます。

どうしても急いで開きたいのですが、
なんとか開く(もしくはデータを抽出する)方法はないでしょうか。

Aベストアンサー

試しに、Excelの Safe Mode で開かないかしらね。
単に、メモリの問題でしたら、ある程度は可能なはずです。

スタート-ファイル名を指定して実行
「excel.exe /s 」
で開きます。

不要なものは一切除去して、立ち上がります。

ただし、ブック自体が壊れているときは、無理だと思います。

このほかにも、ExcelViewer97 というものがあったと思います。
計算式を見るというわけにはいかないのですが、実際、程度問題でだいたいの計算式は、経験的に、自分で作ったものでしたら、そのレイアウトによって、復旧できるはずです。

後、No.2のKenKen_SPさんの方法を、試しに、ADOでやってみましたが、

取り出しはデータだけですね。ADO やDAOあたりで、データ削除できるとは思いますが、元が開かない状態では、保証できません。

他にも、OLE やオートメーション・オブジェクトで、目的のブックに繋いで操作する方法もありますが、開かないブックの操作はしたことがありませんので、なんとも言えません。

試しに、Excelの Safe Mode で開かないかしらね。
単に、メモリの問題でしたら、ある程度は可能なはずです。

スタート-ファイル名を指定して実行
「excel.exe /s 」
で開きます。

不要なものは一切除去して、立ち上がります。

ただし、ブック自体が壊れているときは、無理だと思います。

このほかにも、ExcelViewer97 というものがあったと思います。
計算式を見るというわけにはいかないのですが、実際、程度問題でだいたいの計算式は、経験的に、自分で作ったものでしたら、そのレイアウトによ...続きを読む

QDirコマンドでフォルダ内ファイルの合計サイズをだすには?(コマンドプロンプトにて)

いろいろ調べましたが不明な点があり、質問します。

WindowsのDOSプロンプトでdirコマンドを打つとフォルダ・ファイルの一覧が表示されますが、その中にファイルサイズが表示されています。
このサイズを合計できるコマンドはありませんか?
DIRコマンドのオプションを調べましたがそれらしいものが見当たりません。
具体的には
C:\xxx\配下に50個程度のファイルがあります。
その50個の合計サイズを知りたいです。
xxxフォルダの親フォルダにはアクセス不可です。

ずーっと悩んでいます。よろしくお願いします。

なお、OSはWindowsNTか2000で使用予定です。

Aベストアンサー

カレントドライブ、カレントフォルダを
C:\xxx\
にした状態で、

dir /s /a-d

/sパラメータででサブディレクトリすべてを検索
/a-dパラメータでディレクトリ以外のファイル(つまり属性に関係なくすべてのファイル

これを実行すると最後にファイルの個数とファイルサイズの合計を表示します。

もし、隠し属性のファイルは合計しないのであれば、

dir /s

だけで良いと思われます。

Qsqlplusで表示が変なので、出力を整形したい。

いつもお世話になっています。

サーバにアクセスしてsqlplusで、
データを調べたいのですが、
出力形式が見づらくて困っています。

よくわからいのですが、
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
---------------------------
1の値 2の値
3の値
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
---------------------------

上記のように意味不明な形式で出てきます。

例えばこんな風に

select カラム1,カラム2,カラム3 from hoge;

カラム1 1の値
---------------------------
カラム2 2の値
---------------------------
カラム3 3の値

等のように分かりやすく表示できないでしょうか?

ちなみにOracle9iR2を使用しています。
sqlに関するツールは使用できないルールでして、あくまでsqlplusのコマンド上でみやすくしなければなりません。

分かりづらくですいませんが、皆さま、ご教授お願いします。

いつもお世話になっています。

サーバにアクセスしてsqlplusで、
データを調べたいのですが、
出力形式が見づらくて困っています。

よくわからいのですが、
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
---------------------------
1の値 2の値
3の値
---------------------------
カラム名1
---------------------------
カラム名2
---------------------------
カラム名3
-----------------------...続きを読む

Aベストアンサー

SQLPLUSを起動して、

SQL>set linesize 列数

でどうだ。

SQL>show linesize

で確認ができる。

Qテキストファイルから最終行の抽出

テキストファイルに出力された内容のうち、
最終行のみ抽出し、他のテキストファイルに
落とし込みたいと考えています。

DOSコマンドを使用して実現したいと思うのですが
良い方法などございましたら、ご教授ください。

宜しくお願い致します。

※OSはWindows Server 2003を使用しています。

Aベストアンサー

98SEから2003までのすべてのWindowsに標準搭載されているコマンドでFORと>(リダイレクト)を使って出来ます。

FOR /F "TOKENS=1*" %A IN ([元ネタファイル名]) DO ECHO %A > [出力先ファイル名]

 (大カッコ([ ])は必要ありませんが、普通のカッコ( () ) は必要です。)

 元ネタのファイルサイズが大きかったら少々思い処理になるかもしれませんが、所詮テキストファイルですので、極端に時間がかかるものでもないでしょう。

 なお、元ネタのファイルはSVS形式などのファイルだと思いますが、そうだとするとフィールドの区切り文字をそのデータ内に含まれないものにするといいですね。FORのなかに" "で囲まれた部分がありますが、そこに 「delims=...」などとデータ内に無い文字列を指定します。"TOKENS=1* delims=..."というようにTOKENSとはスペース区切りで追加します。
(今回、元ネタのデータがどういうものか分からないのではっきりとした答えを書きようがありません。データの形式によっては例外処理対応をする必要もあります。

 バッチで組むならもっと軽くする方法はありますね。なお、その際、FORの内部変数を%%Aとする必要がありますので気をつけましょう。今回はコマンドラインでということですので、コマンドライン1行で出来るものとしています。

98SEから2003までのすべてのWindowsに標準搭載されているコマンドでFORと>(リダイレクト)を使って出来ます。

FOR /F "TOKENS=1*" %A IN ([元ネタファイル名]) DO ECHO %A > [出力先ファイル名]

 (大カッコ([ ])は必要ありませんが、普通のカッコ( () ) は必要です。)

 元ネタのファイルサイズが大きかったら少々思い処理になるかもしれませんが、所詮テキストファイルですので、極端に時間がかかるものでもないでしょう。

 なお、元ネタのファイルはSVS形式などのファイルだと思いますが、そう...続きを読む

Q文字列として"(ダブルコーテーション)を表示させる方法

こんにちは。文字列として、ダブルコーテーションを表示させるには、どうすればよいのか教えてください。m(__)m


例えば、
<font size="2">あいうえお</font>

というタグの「あいうえお」の部分が、セルA1にあった場合、

="<font size="2">"&A1&"</font>"という表示にしたいのです。

"2"のダブルコーテーションも文字列として表示させるには、どうすればよろしいのでしょうか。

教えてください。よろしくお願い致します。

Aベストアンサー

こんにちは~

表示形式は 「標準」 のままで、
ダブルコーテーションを、ダブルコーテーションで囲んでください。

""2""

="<font size=""2"">"&A1&"</font>"

としてみてください。

Qファイルサイズの大きいCSVデータを分割出来るソフト

こんにちは。
仕事上で問題に詰まり、ご質問です。。

一つのCSVファイル(Excelで開いてます。)があり、
このファイルのサイズが、「 40MB 」あります。

このファイルを、それぞれ2MB以内の複数のファイルに
分割しなければいけません。

手作業ですと、上手く2MB以内でファイルを分割することも困難です。


このような場合、何かExcel上で簡単に分割できる方法などは
ありますでしょうか。
もしくは、そのような分割の出来るフリーソフトなどは
あるのでしょうか。

よろしくご回答お願い致します。

Aベストアンサー

csvはアスキー形式ですから、
圧縮ソフトを(LHA・ZIP)などを使うと
驚くほど小さくなります。
そのあとでファイル分割結合ソフトを使えば
よいと思います。

圧縮
http://www.vector.co.jp/soft/win95/util/se033502.html

分割
http://www.forest.impress.co.jp/lib/sys/file/fileseprat/jydivide.html

Q3つの表の外部結合

表A、B、Cの3つがあり、Aのすべての行を出力したいと考えています。
外部結合を用いるのだとは思うのですが、3つの表に対して行う場合の
書き方がわからず困っています。
ご教授いただけないでしょうか?
select * from a,b,c
where a.商品ID =b.商品ID (+) and b.商品ID (+) =c.商品ID (+)
としてみましたが、うまくいきませんでした。

Aベストアンサー

ansi構文の趣旨からいえば、結合条件と絞り込み条件は分けて書くので・・

select *
from a
left join b on (a.商品ID =b.商品ID)
left join c on (b.商品ID =c.商品ID)
where a.年月 = 任意の値

と書くのが一般的でしょうね。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報