yq is a Portable Command-line YAML Processor (2024)

Sign inSubscribe

Developer Tools

Hazem Abbas

3 min read

yq is a Portable Command-line YAML Processor (3)

yq is a powerful and versatile command-line YAML processor. It is similar to renowned projects like jq (a command-line JSON processor) or sed, but specifically tailored for YAML files. With yq, you have the confidence to effortlessly perform a wide range of tasks, including deep reading a YAML file using a path expression, comparing YAML files, updating a YAML file based on a path expression or script file, and much more.

Furthermore, yq empowers you with the capability to merge multiple YAML files, with flexible options for overriding and appending.

Developed in efficient and portable Go, yq grants you the assurance of downloading a binary that is completely self-contained and requires no additional dependencies.

Features

  • Written in portable Go programming language, ensuring compatibility across different platforms.
  • Allows for colorization of output, enhancing readability and visual appeal.
  • Enables deep reading of YAML files using a given path expression, providing easy access to specific data within the file.
  • Can match and list paths that match a given path expression, allowing for efficient data retrieval.
  • Provides the ability to return the lengths of arrays, objects, and scalars, giving insights into the size and structure of the data.
  • Allows for updating of YAML files using a path expression or script file, making it easy to modify the contents of the file.
  • Creates any missing entries in the specified path on the fly, ensuring that the desired data structure is maintained.
  • Facilitates deep comparison of YAML files, allowing for easy identification of differences between two files.
  • Retains the original formatting and comments of YAML files during updates, preserving the integrity and context of the data.
  • Provides validation of YAML files, ensuring that they adhere to the specified structure and format.
  • Allows for the creation of YAML files with a deep path and value, or the creation of a script file for more complex data generation.
  • Supports the prefixing of a path to a YAML file, enabling easy integration of data from different sources.
  • Offers seamless conversion between JSON and YAML formats, providing flexibility in data interchange.
  • Allows for piping of data using the '-' symbol, facilitating easy integration with other command-line tools.
  • Enables the merging of multiple YAML files, with options for overriding and appending data as needed.
  • Supports the handling of multiple documents within a single YAML file, providing efficient reading, writing, and merging capabilities.
  • Provides general shell completion scripts for popular shell environments such as bash, zsh, fish, and powershell, enhancing user experience and productivity.
  • Decode/Encode base64 data
  • Load content from other files
  • Convert to/from json/ndjson
  • Convert to/from xml
  • Convert to/from properties
  • Convert to/from csv/tsv

Platforms

  • Windows
  • Linux
  • macOS
  • Docker

License

MIT License

Resources & Download

GitHub - mikefarah/yq: yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor

yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor - GitHub - mikefarah/yq: yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor

yq is a Portable Command-line YAML Processor (4)GitHubmikefarah

yq is a Portable Command-line YAML Processor (5)

yq

Download yq for free. Portable command-line YAML processor. yq is a portable and lightweight command-line YAML processor. It can be likened to projects like jq (a command-line JSON processor) or sed but for YAML files.

yq is a Portable Command-line YAML Processor (6)SourceForge

yq is a Portable Command-line YAML Processor (7)



20 Free Open-Source Docker Tools for Effective Container Management

Docker is an open-source platform that automates the deployment, scaling, and management of applications. It uses containerization technology to package an application and its dependencies into a standardized unit for software development.This makes it easier to create, deploy, and run applications by using containers, which allow a developer to


Paleta - Free App to Extract Colors from Any Image

In the world of design, colors play a pivotal role. They evoke emotions, set the mood, and communicate ideas. But, managing color palettes can be a tricky process. Enter Paleta, an intuitive tool designed for designers, artists, or anyone wanting to streamline their color work.Paleta revolutionizes how we interact


Beyond Websites: Disseminate's Novel Approach to Static Site Generation Free and Open-source

Disseminate - is Not your Typical Website Static Generator, It Generates Books and Novels as a Static Sites


31 Free, Self-hosted, Open-source, and Web-based Color Palette Generators

A color generator and color palette editing apps are indispensable tools for designers. These are software or online tools that help designers to create, edit, and manage color schemes for their design projects.Color generators allow designers to create a whole range of colors based on a particular color. This


Revolutionize Your Workflow: 10 Free Open-Source Tools for Testing Responsive Design

What is a Responsive Design?Responsive design refers to a web design approach that makes web pages render well on a variety of devices and window or screen sizes.It provides an optimal viewing and interaction experience—easy reading and navigation with a minimum of resizing, panning, and scrolling—across


Streamlining Shell Commands with OliveTin: A User-Friendly Web Interface for Effortless Access

OliveTin: Access Shell Commands Directly from Interface



Articles

TutorialsDevelopmentProductivityMarketing

Systems

Cross-platformmacOSWindowsLinuxAndroidRaspberryPi

Development

FrameworksJavaScriptFlutterNext.jsStraters

Apps

DockerSelf-hostedTerminalJava

Science - Healthcare

HealthcareMedical RecordsRadiology (DICOM-PACS)

Open-source Apps

9,500+

Medical Apps

500+

Lists

450+

Dev. Resources

900+

yq is a Portable Command-line YAML Processor (2024)

References

Top Articles
Latest Posts
Article information

Author: Nathanael Baumbach

Last Updated:

Views: 6028

Rating: 4.4 / 5 (75 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Nathanael Baumbach

Birthday: 1998-12-02

Address: Apt. 829 751 Glover View, West Orlando, IN 22436

Phone: +901025288581

Job: Internal IT Coordinator

Hobby: Gunsmithing, Motor sports, Flying, Skiing, Hooping, Lego building, Ice skating

Introduction: My name is Nathanael Baumbach, I am a fantastic, nice, victorious, brave, healthy, cute, glorious person who loves writing and wants to share my knowledge and understanding with you.