- ベストアンサー
ファイルの中のレコード数を知りたい
タイトルの通り、 UNIXでデータファイルの中身のレコード数を知りたいのですが、 下記条件があります。 1.圧縮されたまま数えたい。 →解凍するとファイルサイズがかなり大きくなり、 ディスク容量を圧迫するため。 2.圧縮形式が、「Gzip compressed data」である。 3.ファイル名に拡張子無し。 以上になります。 方法を教えていただきたく。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
レコード数とは行数のこととして回答します。パイプという機能を覚えるといいです。 gzcat ファイル名 | wc -l もしgzcatコマンドが無いときは、 gzip -dc ファイル名 | wc -l
その他の回答 (2)
- kent85
- ベストアンサー率52% (38/73)
> UNIXでデータファイルの中身のレコード数を知りたいのですが、 無理です。 あまりにも抽象的/汎用的/幅がありすぎる質問をなさっています。 「データファイル」というのは抽象的な概念です。 「レコード数」も、それだけだと、やはり抽象的な概念です。 汎用的にいえば、データをスキャンしてカウントする必要があります。 ですが、データファイルにはレコード数という概念がマッチしないケースがあります。 -- 数年前の出来事です。 メールか何かで添付された?データファイルがあるけど、知らないフォーマットで展開できないので、展開してください。 …などと同僚から依頼されたことがあります。 (1) USBメモリの中身を覗いたところ、見た感じではPGPで暗号化されたデータファイルのようだった。 (2) 必要な情報をもらって復号化したら、DATA19991231PM.ZIPのようなものが展開。 (3) ZIPのデータファイルを展開してみたら、容量不足でパンク。 (4) 中身を同僚に確認したところ、DBをエクスポートしたものでした。 この場合のレコード数であれば、DBにインポートさせてからSQL文を発行したりすれば、カウント出来たはず……。
- junkUser
- ベストアンサー率56% (218/384)
gunzip -t ファイル名 でいかがでしょうか。