, a versatile command-line tool for querying and modifying data structures, focusing on its powerful selection syntax and operators. This guide is designed to help you understand and utilize dasel
effectively in various scenarios.

Introduction to Dasel

Dasel (Data-Selector) is a command-line utility that simplifies the process of querying and modifying data in various formats, including JSON, YAML, TOML, and XML. It employs a unified selector syntax, allowing users to seamlessly switch between different data formats without learning new query languages.


Before using dasel, ensure it’s installed on your system. You can download the latest binary for your platform from the official GitHub releases page or use package managers like brew for macOS:

brew install dasel

Basic Usage

The fundamental operation of dasel involves specifying the file (-f flag) and the query. Here’s the general syntax:

dasel -f <file> -r <format> <selector>

Selectors and Operators

Dasel selectors are used to navigate through the data structure. Here are some of the key operators and their uses:


  1. Selecting a Single Property

    To select the name property from a JSON file:

    dasel -f data.json '.name'
  2. Accessing Array Elements

    To get the third item from an array named items:

    dasel -f data.json '.items.[2]'
  3. Selecting All Elements of an Array

    To select all elements within an array users:

    dasel -f data.json '.users.all()'
  4. Filtering Based on Conditions

    To find all users with a non-empty name field:

    dasel -f data.json '.users.all().filter(name?.len())'
  5. Selecting Nested Properties

    To select the name property within the document object of each segment in all records:

    dasel -f data.json '.records.all().segment.document.name'


Dasel offers a powerful yet simple way to interact with various data formats using a unified query language. Its flexibility in handling different data types and structures makes it an invaluable tool for developers and system administrators alike. This guide covers the basics to get started with dasel, but the tool’s capabilities extend far beyond what’s covered here. For more detailed information and advanced features, refer to the official documentation.