yq
v4.x
v4.x
  • yq
  • How It Works
  • Recipes
  • Upgrading from V3
  • Commands
    • Evaluate
    • Evaluate All
    • Shell Completion
  • Operators
    • Add
    • Alternative (Default value)
    • Anchor and Alias Operators
    • Array to Map
    • Assign (Update)
    • Boolean Operators
    • Collect into Array
    • Column
    • Comment Operators
    • Compare Operators
    • Contains
    • Create, Collect into Object
    • Date Time
    • Delete
    • Divide
    • Document Index
    • Encode / Decode
    • Entries
    • Env Variable Operators
    • Equals
    • Eval
    • File Operators
    • Filter Operator
    • Flatten
    • Group By
    • Has
    • Keys
    • Kind
    • Length
    • Line
    • Load
    • Min
    • Map
    • Max
    • Modulo
    • Multiply (Merge)
    • Omit
    • Parent
    • Path
    • Pick
    • Pipe
    • Pivot
    • Recursive Descent (Glob)
    • Reduce
    • Reverse
    • Select
    • Shuffle
    • Slice Array
    • Sort
    • Sort Keys
    • Split into Documents
    • String Operators
    • Style
    • Subtract
    • Tag
    • To Number
    • Traverse (Read)
    • Union
    • Unique
    • Variable Operators
    • With
  • Usage
    • Output format
    • Working with CSV, TSV
    • Working with JSON
    • Working with Properties
    • Working with XML
    • Working with LUA
    • Working with TOML
    • Working with Shell Output
    • Front Matter
    • Split into multiple files
    • GitHub Action
    • Tips, Tricks, Troubleshooting
  • Github Page
Powered by GitBook
On this page
  • Get tag
  • type is an alias for tag
  • Set custom tag
  • Find numbers and convert them to strings

Was this helpful?

  1. Operators

Tag

The tag operator can be used to get or set the tag of nodes (e.g. !!str, !!int, !!bool).

Get tag

Given a sample.yml file of:

a: cat
b: 5
c: 3.2
e: true
f: []

then

yq '.. | tag' sample.yml

will output

!!map
!!str
!!int
!!float
!!bool
!!seq

type is an alias for tag

Given a sample.yml file of:

a: cat
b: 5
c: 3.2
e: true
f: []

then

yq '.. | type' sample.yml

will output

!!map
!!str
!!int
!!float
!!bool
!!seq

Set custom tag

Given a sample.yml file of:

a: str

then

yq '.a tag = "!!mikefarah"' sample.yml

will output

a: !!mikefarah str

Find numbers and convert them to strings

Given a sample.yml file of:

a: cat
b: 5
c: 3.2
e: true

then

yq '(.. | select(tag == "!!int")) tag= "!!str"' sample.yml

will output

a: cat
b: "5"
c: 3.2
e: true
PreviousSubtractNextTo Number

Last updated 2 years ago

Was this helpful?