grasmash/yaml-cli
A command line tool for reading and manipulating yaml files.
Maintainers
3.2.1
2024-04-23 02:10 UTC
Requires
- php: >=8.0
- dflydev/dot-access-data: ^3
- symfony/console: ^6 || ^7
- symfony/filesystem: ^6 || ^7
- symfony/yaml: ^6 || ^7
Requires (Dev)
Suggests
None
Provides
None
Conflicts
None
Replaces
None
MIT 09a8860566958a1576cc54bbe910a03477e54971
- Matthew Grasmick
This package is auto-updated.
Last update: 2026-05-26 17:29:21 UTC
README
👁 CI
👁 Packagist
👁 Total Downloads
👁 Coverage Status
Yet another command line tool for reading and manipulating yaml files, built on the Symfony console component.
Commands:
| Command | Description |
|---|---|
| get:value | Get a value for a specific key in a YAML file. |
| get:type | Get the data type of a value in a YAML file. |
| lint | Validates that a given YAML file has valid syntax. |
| unset:key | Unset a specific key in a YAML file. |
| update:key | Change a specific key in a YAML file. |
| update:value | Update the value for a specific key in a YAML file. |
Installation
composer require grasmash/yaml-cli
Example usage:
./vendor/bin/yaml-cli get:value somefile.yml some-key
./vendor/bin/yaml-cli get:type somefile.yml some-key
./vendor/bin/yaml-cli lint somefile.yml
./vendor/bin/yaml-cli unset:value somefile.yml some-key
./vendor/bin/yaml-cli update:key somefile.yml old-key new-key
./vendor/bin/yaml-cli update:value somefile.yml some-key some-value
# Cast to boolean.
./vendor/bin/yaml-cli update:value somefile.yml some-key false
./vendor/bin/yaml-cli update:value somefile.yml some-key true
./vendor/bin/yaml-cli update:value somefile.yml some-key 0 --type=boolean
./vendor/bin/yaml-cli update:value somefile.yml some-key 0 --type=bool
# Cast to null.
./vendor/bin/yaml-cli update:value somefile.yml some-key null
./vendor/bin/yaml-cli update:value somefile.yml some-key ~ --type=null
# Cast to integer.
./vendor/bin/yaml-cli update:value somefile.yml some-key 1 --type=integer
./vendor/bin/yaml-cli update:value somefile.yml some-key 1 --type=int
# Cast to float/double/real.
./vendor/bin/yaml-cli update:value somefile.yml some-key 1.0 --type=float
./vendor/bin/yaml-cli update:value somefile.yml some-key 1.0 --type=double
./vendor/bin/yaml-cli update:value somefile.yml some-key 1.0 --type=real
# Forcibly cast to string for values that would otherwise be boolean or null.
./vendor/bin/yaml-cli update:value somefile.yml some-key true --type=string
./vendor/bin/yaml-cli update:value somefile.yml some-key false --type=string
./vendor/bin/yaml-cli update:value somefile.yml some-key null --type=string
Similar tools:
- Javascript - https://github.com/pandastrike/yaml-cli
- Ruby - https://github.com/rubyworks/yaml_command
- Python - https://github.com/0k/shyaml
Recognition
This project was inspired by the yaml commands in Drupal Console.
