TableSkim は必要なライブラリをすべて組み込んだネイティブパッケージとして配布しているので、ほかに何もインストールする必要はありません。
| プラットフォーム | パッケージ |
|---|---|
| Linux | .deb(Ubuntu 24.04 以降)、.rpm(RHEL 10 とその互換ディストリビューション)、またはどのディストリビューションでも動く .zip |
| macOS | .dmg ディスクイメージ、または TableSkim.app を含む .zip |
| Windows | インストーラー(.exe)、.zip |
.deb と .rpm は Ubuntu 24.04 と Rocky Linux 10 でビルドしているため、それと同じかより新しいディストリビューションにしかインストールできません。ほかのディストリビューションや古いもの(glibc 2.28 以降:RHEL 8、Debian 10、Ubuntu 20.04 以降)では Linux 用の ZIP を使ってください。インストールは不要で、好きな場所に展開して中の bin/tableskim を実行します。
| ZIP | 内容 |
|---|---|
tableskim-<version>-Linux-x86_64.zip | GUI(Wayland と X11)とターミナル UI |
tableskim-<version>-Linux-x11-x86_64.zip | X11 専用の GUI(Wayland のライブラリが不要)とターミナル UI |
tableskim-tui-<version>-Linux-x86_64.zip | ターミナル UI のみ(デスクトップのないサーバー向け) |
macOS 版は開発元の証明書で署名していないため、初回は macOS が許可を求めます。TableSkim.app を Control キーを押しながらクリック(右クリック)して 開く を選ぶか、システム設定 → プライバシーとセキュリティ で許可してください。「壊れている」と表示されるときは、ターミナルでダウンロードの印を外します。
xattr -dr com.apple.quarantine /Applications/TableSkim.app
Web アプリ は tableskim-<version>-web.zip です。Web サーバーに置く静的なファイルのフォルダで、開いた人のブラウザの中で TableSkim が動きます。Web アプリの使い方 を参照してください。
自分でビルドする場合は README の Building の節を参照してください。
tableskim コマンド.deb と .rpm は tableskim コマンドとデスクトップエントリをインストールするので、アプリケーションメニューにも TableSkim が表示されます。ZIP ではコマンドは bin/ にあります。どこからでも使うには PATH の通った場所にリンクを作ってください。
PATH の通った場所にリンクを作ります。
ln -s /Applications/TableSkim.app/Contents/MacOS/TableSkim /usr/local/bin/tableskim
TableSkim.exe は GUI アプリケーションです(コンソールは開きません)。ターミナル UI には、同じ場所にインストールされる tableskim-tui.exe を使います。これは起動したターミナルの中で動きます。
このマニュアルは TableSkim に同梱されています。GUI では Help → User Manual(F1)で開けます。また、Web ブラウザで読める HTML 版もインストールされるので、ターミナル UI を使うときに便利です。
| プラットフォーム | 場所 |
|---|---|
| Linux | /usr/share/doc/tableskim/html/README.html(ZIP では share/doc/tableskim/html/README.html) |
| macOS | .dmg または .zip 内の、TableSkim.app の隣にある Manual フォルダ |
| Windows | インストール先フォルダの Manual\README.html。インストーラーはスタートメニューに TableSkim User Manual も追加します |
tableskim [オプション] [ファイル...]
DISPLAY も WAYLAND_DISPLAY も設定されていないとき、macOS では SSH 接続中のときです。-t / --tui を付けると、画面が使える場合でもターミナル UI で起動します。
GUI では File → Open...(Ctrl+O)からもファイルを開けます。macOS では、アプリケーションのアイコンにファイルをドロップするか、Finder の「このアプリケーションで開く」を使うこともできます。
tableskim sales.xlsx # GUI(画面がなければ TUI) tableskim a.csv b.parquet # GUI のウィンドウを 2 つ開く tableskim -t data.csv.gz # ターミナル UI tableskim --encoding cp932 old.csv # Shift_JIS の CSV ファイルを読む
| オプション | 説明 |
|---|---|
-t, --tui | グラフィカルな画面が使えてもターミナル UI を使う |
--encoding <名前> | CSV / TSV ファイルの文字コード:auto(既定)、utf-8、utf-16le、utf-16be、cp932(shift_jis) |
--header <指定> | CSV / TSV ファイルや Excel シートの先頭行が列名かどうか:auto(既定)、yes、no |
--log <ファイル> | ログメッセージをファイルに書き出す |
-v, --verbose | 詳細(デバッグ)ログを有効にする |
-V, --version | バージョン情報を表示して終了する |
-h, --help | オプションの一覧を表示して終了する |
ターミナル UI は、ログメッセージが画面に重なって表示されないよう、--log を指定したときだけログを書き出します。
--summary と --head は、ウィンドウを開かずに各ファイルの概要を標準出力に書き出して終了します。スクリプトやパイプライン、AI エージェントからファイルの中身をすばやく確かめるのに使えます。圧縮された CSV ファイルも含め、TableSkim で開けるファイルならどれでも使えます。
tableskim --summary data.xlsx # 列、統計量、先頭 10 行 tableskim --head 20 data.csv.gz # 列と先頭 20 行 tableskim --summary --format json db.duckdb # 同じ内容を JSON で tableskim --summary --sheet Sales book.xlsx # 1 つのシートだけ
シートごとに次の内容を出力します。
--summary のとき:全行にわたる各列の統計量。統計パネルと同じく、空のセルの数、異なる値の数、最小値、最大値、平均、標準偏差、最も多い 5 つの値です。DuckDB と Parquet ファイルはデータベースの中で数え、それ以外のファイルは行をメモリーに残さずに 1 行ずつ 1 回だけ読みます。
--summary では 10 行、--head N では N 行。
CSV / TSV ファイルや Excel シートの先頭行は、ウィンドウと同じく、見出しらしく見えれば列名として扱います(上の --header)。
| オプション | 説明 |
|---|---|
--summary | 列とその型・統計量、先頭の行を出力する |
--head <N> | 列と先頭 N 行を出力する(--summary と一緒なら 10 行の代わりに N 行) |
--format <形式> | markdown(既定)または json |
--sheet <名前> | このシートだけ(複数回指定できる) |
--scan-rows <N> | 統計量を先頭 N 行だけで計算する |
Markdown のセルは 80 バイトで切り詰めます。JSON はすべての値をそのまま書き出します。数値と真偽値はそのまま、日付と日時は ISO 形式の文字列、空のセルは null です。ファイルごとに file、encoding(テキストファイルのみ)、sheets を持つオブジェクトになり、各シートは name、rows、rows_exact、columns(name、type、stats)と、行の配列である head を持ちます。複数のファイルを指定するとオブジェクトの配列になります。読めないファイルやシートがあると、そのオブジェクトに error が入り、エラーは標準エラー出力にも書き出され、終了ステータスは 1 になります。
ウィンドウには表が表示され、左に行番号、上に列見出しが並びます。行は読み込まれたそばから表示されるので、大きなファイルの読み込み中でもスクロール、並べ替え、検索ができます。

CSV / TSV ファイルや Excel シートの先頭行は、見出しらしく見えれば(すべてのセルが空でない文字列で、同じ値がない)列名として扱います。そうでなければデータとして表示し、列名は表計算ソフトと同じく A、B、C… になります。判定が違うときは View → First Row → Header または Data を選んでください(ターミナル UI では H で判定とその逆を切り替えます。コマンドラインでは --header で指定します)。Parquet ファイルとデータベースは、常にファイル自身の列名を使います。
続きは GUI の使い方 または ターミナル UI の使い方 を参照してください。