Linux | gzip圧縮されたCSVファイルを効率的に確認する方法

mizky(^ω^)
圧縮されたファイルをいちいち解凍して中身確認するのだるくね?

ということで、今日はGZ形式で圧縮されたCSVファイルを展開せずに中身を確認する方法について書いていきます。

ちょっとした背景

最近、容量の大きいCSVファイルを取り扱う機会が増えてきました。
そして、容量が大きいのでgzip形式で圧縮された状態でファイルを扱います。

さらに、その圧縮されたファイルの中を確認する機会ってそこそこの頻度であるんですよね。

GUIなら、右クリックで展開して開けば終わりなのですが
(そもそも容量大きすぎて開くことが難しい場合が大半ですがw)
Linuxですと、そうもいかないんですよね。

そして、今日

mizky(^ω^)
いちいち解凍して中身確認するのだるくね?

ということで1コマンドで中身を簡単に確認する方法がないかを調べてみました。

結論

いきなり結論ですが、以下のコマンドで中身を確認することができます。

zcat yourfile.csv.gz | less

コマンドの解説

基本的には以下の2つのコマンド

  • zcat yourfile.csv.gz
  • less

とパイプで成り立っています。

zcat yourfile.csv.gz

zcatgzip 形式で圧縮されたファイルの内容を展開し、標準出力(通常は画面)に出力するコマンドです。

| (パイプ)

コマンドの出力を別のコマンドの入力として直接渡すことができます。

今回はzcat yourfile.csv.gzの出力をlessの入力として渡しています。

less

テキストファイルビューアで、ファイルの内容を一画面ずつ表示する便利なツールです。
これを使うと、大きなファイルでもメモリを節約しながら、前後にスクロールして内容を確認できます。

補足

headtail コマンドを使って、ファイルの先頭や末尾の部分だけを確認することも可能です。

例えば、ファイルの先頭10行だけを見たい場合は、こんな感じになります。

zcat yourfile.csv.gz | head -n 10

コメント

タイトルとURLをコピーしました