17 ポイント 投稿者 GN⁺ 2024-01-07 | 1件のコメント | WhatsAppで共有
  • CSVを読み込み、キーボードショートカットでスクロールやフィルタリングをしながら確認可能
  • csvlens ファイル名 で実行するか、 | csvlens でパイプ

主なキー バインディング

  • hjkl または矢印キー: 指定した方向に1行または1列スクロール
  • Ctrl + f または Page Down: 1画面下へスクロール
  • Ctrl + b または Page Up: 1画面上へスクロール
  • Ctrl + d または d: 半画面下へスクロール
  • Ctrl + u または u: 半画面上へスクロール
  • Ctrl + h: 1画面左へスクロール
  • Ctrl + l: 1画面右へスクロール
  • Ctrl + ←: 最初の列へスクロール
  • Ctrl + →: 最後の列へスクロール
  • G または End: 最下部へ移動
  • g または Home: 最上部へ移動
  • G: n 行目へ移動
  • /: 正規表現に一致する内容を検索してハイライト
  • n(検索モードで): 次の結果へ移動
  • N(検索モードで): 前の結果へ移動
  • &: 正規表現を使って行をフィルタリング(一致する行のみ表示)
  • *: 正規表現を使って列をフィルタリング(一致する列のみ表示)
  • TAB: 行・列・セル選択モードを切り替え
  • >: 選択した列の幅を拡大
  • <: 選択した列の幅を縮小
  • Enter(セルモードで): 選択したセルを標準出力に出力して終了
  • -S: 折り返し表示を切り替え
  • r: デフォルト表示にリセット(すべてのフィルタとユーザー定義の列幅を削除)
  • H: ヘルプを表示
  • q: 終了

オプション引数

  • -d <delimiter>: CSV解析時にこの区切り文字を使用(例: csvlens file.csv -d $'\t')。
  • -d auto: 区切り文字の自動検出を有効化。
  • -i, --ignore-case: 検索時に大文字小文字を無視。検索文字列に大文字が含まれる場合はこのフラグを無視。
  • --echo-column <column_name>: Enterキーを押したときに、選択した行のこの列の値を標準出力に出力して終了。

GN⁺の意見:

  • csvlensはCSVファイルを効率よく閲覧・操作できる強力なツール。特に大規模データを扱うデータサイエンティストや開発者に有用。
  • ユーザーフレンドリーなキー バインディングとフィルタリングオプションにより、データ探索がさらに速く便利になる。
  • Linuxユーザーにとっては特にインストールが簡単で、さまざまなLinuxディストリビューションで手軽に利用できる点がこのツールの重要性を高めている。

1件のコメント

 
GN⁺ 2024-01-07
Hacker Newsのコメント
  • CSVファイルを見るのに Tad GUI を使ったことはあるが、普段は vi の nowrap オプションを使うか、R でファイルを読み込んでいる。これからは csvlens が CSV ファイルの標準ビューアーになりそうだ。
  • CSV のワークフローを大きく改善したものの1つが duckdb だ。SQL を使って CSV をクエリできる小さなバイナリだ。
  • CSV ファイルのパースには clickhouse-local を使うのが気に入っている。カスタム区切り文字やパース規則が必要な場面でうまく動く。最近では、CSV ファイルが圧縮されていても展開する必要がなく、自動で圧縮形式を認識して処理してくれることに気づいた。
  • TSV が標準になっていれば、こうしたツールは必要なかっただろう。
  • CSV ファイルでよくやることの1つは、特定の列の全行や特定の行を合計することだ。たとえば年末の税務精算のために、銀行や決済プロバイダーからエクスポートした巨大な CSV ファイルがあり、特定項目の合計を出したいことがある。GUI ツールなら列を並べ替えて、マウスで必要な部分を選択し、リアルタイムで合計を確認できる。自動スクリプトで解決できるほど整っていないこともあり、手作業のほうがよいと感じることもある。税金が絡むので、ミスをすると大きな問題になりかねない。Windows や Linux でうまく動く、まともなスプレッドシートアプリを探している。Libre と Open Office はどちらも特定の種類の CSV で列のパースに苦労していて、並べ替えの挙動も Google スプレッドシートよりかなり悪い。Google への依存を減らしたい。
  • csvkit[^0] を使うのが気に入っていた。csvlens ほど優れたビューアーではないが、CSV データを grep、cut、pipe できる機能が便利だ。csvlens と csvkit の組み合わせは素晴らしいものになりそうだ。
  • ずっと探していた完璧なビューアーを見つけた!Visidata も良いが、自分が求めているよりずっと複雑だ。このビューアーは自分のワークフローに完璧に合いそうだ。共有してくれてありがとう!
  • https://www.moderncsv.com で自分にぴったりの解決策を見つけた。起動が速く、GUI は洗練されていて、機能は十分、余計なものがない。