Repolode
TomWright

TomWright/dasel

JSON、YAML、TOML、XML、CSVなどの構造化データを、共通のセレクター構文で検索・変更できるCLIツール兼Goライブラリ。

スター
8,050
フォーク
178
未解決の Issue
25
最終コミット
10 日前

これは何?

Dasel(Data-Selectの略)は、共通のセレクター構文を使って、コマンドラインから構造化データの読み取り、更新、変換を行えます。同じ式をJSON、YAML、TOML、XML、CSV、HCL、INI、KDLで使えるため、形式ごとに異なるツールやクエリ言語を用意する必要はありません。

値の抽出に加えて、フィールドの更新・追加・削除によるファイルの直接編集や、JSONからYAML、TOMLからJSONといった形式間の変換にも対応しています。また、再帰下降(..)や、ドキュメント内の任意の場所にある値を照合するsearch関数も利用できます。

Daselは、Homebrew、go install、ビルド済みリリースを通じてCLIバイナリとして配布されており、Goライブラリとしてインポートすることもできます。Bash、Zsh、Fish、PowerShell向けのシェル補完も利用できます。

主な機能

  • 01JSON、YAML、TOML、XML、CSV、HCL、INI、KDLで共通のセレクター構文を使えます。
  • 02構造化ファイル内の値を直接更新・追加・削除できます。
  • 03対応形式間でデータを変換できます。
  • 04ドキュメント全体を対象に、再帰下降や条件検索を利用できます。
  • 05Bash、Zsh、Fish、PowerShell向けのシェル補完を提供します。
  • 06Goライブラリとしてインポートできます。

ユースケース

  • シェルスクリプトやCIパイプラインからYAMLまたはJSONの設定ファイルを編集する。
  • 設定ファイルを別の形式に変換する。
  • ターミナルからAPIレスポンスやデータファイルの特定のフィールドを抽出する。
  • DevOpsワークフローで構造化ファイル内の値を一括更新する。

クイックスタート

  1. 1

    Homebrewでインストール(macOS/Linux)

    brew install dasel
  2. 2

    またはGoでインストール

    go install github.com/tomwright/dasel/v3/cmd/dasel@master
  3. 3

    Releasesページからビルド済みバイナリをダウンロード(Linux、macOS、Windows)

  4. 4

    JSON入力で最初のクエリを実行

    echo '{"foo": {"bar": "baz"}}' | dasel -i json 'foo.bar'

収録されている特集

トピック

よくある質問

dasel とは?
JSON、YAML、TOML、XML、CSVなどの構造化データを、共通のセレクター構文で検索・変更できるCLIツール兼Goライブラリ。 Dasel(Data-Selectの略)は、共通のセレクター構文を使って、コマンドラインから構造化データの読み取り、更新、変換を行えます。同じ式をJSON、YAML、TOML、XML、CSV、HCL、INI、KDLで使えるため、形式ごとに異なるツールやクエリ言語を用意する必要はありません。
dasel は無料で使えますか?ライセンスは?
dasel は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
dasel は今もメンテナンスされていますか?
活発にメンテナンス中。dasel の最終コミットは 2026年10月15日 です。
dasel は何に使えますか?
シェルスクリプトやCIパイプラインからYAMLまたはJSONの設定ファイルを編集する。 設定ファイルを別の形式に変換する。 ターミナルからAPIレスポンスやデータファイルの特定のフィールドを抽出する。 DevOpsワークフローで構造化ファイル内の値を一括更新する。
dasel のインストール方法は?
Homebrewでインストール(macOS/Linux): brew install dasel またはGoでインストール: go install github.com/tomwright/dasel/v3/cmd/dasel@master Releasesページからビルド済みバイナリをダウンロード(Linux、macOS、Windows) JSON入力で最初のクエリを実行: echo '{"foo": {"bar": "baz"}}' | dasel -i json 'foo.bar'
dasel はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/TomWright/dasel

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト