mirror of
https://github.com/mikefarah/yq.git
synced 2025-02-25 17:15:48 +00:00
Clean up cli help doc, add github and doc links
This commit is contained in:
parent
21e2fdaea2
commit
cae3d95fdc
@ -15,13 +15,27 @@ func createEvaluateAllCommand() *cobra.Command {
|
|||||||
Aliases: []string{"ea"},
|
Aliases: []string{"ea"},
|
||||||
Short: "Loads _all_ yaml documents of _all_ yaml files and runs expression once",
|
Short: "Loads _all_ yaml documents of _all_ yaml files and runs expression once",
|
||||||
Example: `
|
Example: `
|
||||||
# merges f2.yml into f1.yml (inplace)
|
# Merge f2.yml into f1.yml (inplace)
|
||||||
yq eval-all --inplace 'select(fileIndex == 0) * select(fileIndex == 1)' f1.yml f2.yml
|
yq eval-all --inplace 'select(fileIndex == 0) * select(fileIndex == 1)' f1.yml f2.yml
|
||||||
|
## the same command and expression using shortened names:
|
||||||
|
yq ea -i 'select(fi == 0) * select(fi == 1)' f1.yml f2.yml
|
||||||
|
|
||||||
# use '-' as a filename to read from STDIN
|
|
||||||
|
# Merge all given files
|
||||||
|
yq ea '. as $item ireduce ({}; . * $item )' file1.yml file2.yml ...
|
||||||
|
|
||||||
|
# Read from STDIN
|
||||||
|
## use '-' as a filename to read from STDIN
|
||||||
cat file2.yml | yq ea '.a.b' file1.yml - file3.yml
|
cat file2.yml | yq ea '.a.b' file1.yml - file3.yml
|
||||||
`,
|
`,
|
||||||
Long: "Evaluate All:\nUseful when you need to run an expression across several yaml documents or files. Consumes more memory than eval",
|
Long: `yq is a portable command-line YAML processor (https://github.com/mikefarah/yq/)
|
||||||
|
See https://mikefarah.gitbook.io/yq/ for detailed documentation and examples.
|
||||||
|
|
||||||
|
## Evaluate All ##
|
||||||
|
This command loads _all_ yaml documents of _all_ yaml files and runs expression once
|
||||||
|
Useful when you need to run an expression across several yaml documents or files (like merge).
|
||||||
|
Note that it consumes more memory than eval.
|
||||||
|
`,
|
||||||
RunE: evaluateAll,
|
RunE: evaluateAll,
|
||||||
}
|
}
|
||||||
return cmdEvalAll
|
return cmdEvalAll
|
||||||
|
@ -13,25 +13,31 @@ func createEvaluateSequenceCommand() *cobra.Command {
|
|||||||
var cmdEvalSequence = &cobra.Command{
|
var cmdEvalSequence = &cobra.Command{
|
||||||
Use: "eval [expression] [yaml_file1]...",
|
Use: "eval [expression] [yaml_file1]...",
|
||||||
Aliases: []string{"e"},
|
Aliases: []string{"e"},
|
||||||
Short: "Apply expression to each document in each yaml file given in sequence",
|
Short: "Apply the expression to each document in each yaml file in sequence",
|
||||||
Example: `
|
Example: `
|
||||||
# runs the expression against each file, in series
|
# Reads field under the given path for each file
|
||||||
yq e '.a.b | length' f1.yml f2.yml
|
yq e '.a.b' f1.yml f2.yml
|
||||||
|
|
||||||
# prints out the file
|
# Prints out the file
|
||||||
yq e sample.yaml
|
yq e sample.yaml
|
||||||
|
|
||||||
# use '-' as a filename to read from STDIN
|
# Read from STDIN
|
||||||
|
## use '-' as a filename to read from STDIN
|
||||||
cat file2.yml | yq e '.a.b' file1.yml - file3.yml
|
cat file2.yml | yq e '.a.b' file1.yml - file3.yml
|
||||||
|
|
||||||
# prints a new yaml document
|
# Creates a new yaml document
|
||||||
|
## Note that editing an empty file does not work.
|
||||||
yq e -n '.a.b.c = "cat"'
|
yq e -n '.a.b.c = "cat"'
|
||||||
|
|
||||||
|
# Update a file inplace
|
||||||
# updates file.yaml directly
|
|
||||||
yq e '.a.b = "cool"' -i file.yaml
|
yq e '.a.b = "cool"' -i file.yaml
|
||||||
`,
|
`,
|
||||||
Long: "Evaluate Sequence:\nIterate over each yaml document, apply the expression and print the results, in sequence.",
|
Long: `yq is a portable command-line YAML processor (https://github.com/mikefarah/yq/)
|
||||||
|
See https://mikefarah.gitbook.io/yq/ for detailed documentation and examples.
|
||||||
|
|
||||||
|
## Evaluate Sequence ##
|
||||||
|
This command iterates over each yaml document from each given file, applies the
|
||||||
|
expression and prints the result in sequence.`,
|
||||||
RunE: evaluateSequence,
|
RunE: evaluateSequence,
|
||||||
}
|
}
|
||||||
return cmdEvalSequence
|
return cmdEvalSequence
|
||||||
|
@ -11,7 +11,8 @@ func New() *cobra.Command {
|
|||||||
var rootCmd = &cobra.Command{
|
var rootCmd = &cobra.Command{
|
||||||
Use: "yq",
|
Use: "yq",
|
||||||
Short: "yq is a lightweight and portable command-line YAML processor.",
|
Short: "yq is a lightweight and portable command-line YAML processor.",
|
||||||
Long: `yq is a lightweight and portable command-line YAML processor. It aims to be the jq or sed of yaml files.`,
|
Long: `yq is a portable command-line YAML processor (https://github.com/mikefarah/yq/)
|
||||||
|
See https://mikefarah.gitbook.io/yq/ for detailed documentation and examples.`,
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, args []string) error {
|
||||||
if version {
|
if version {
|
||||||
cmd.Print(GetVersionDisplay())
|
cmd.Print(GetVersionDisplay())
|
||||||
|
@ -25,7 +25,7 @@ const ProductName = "yq"
|
|||||||
// GetVersionDisplay composes the parts of the version in a way that's suitable
|
// GetVersionDisplay composes the parts of the version in a way that's suitable
|
||||||
// for displaying to humans.
|
// for displaying to humans.
|
||||||
func GetVersionDisplay() string {
|
func GetVersionDisplay() string {
|
||||||
return fmt.Sprintf("%s version %s\n", ProductName, getHumanVersion())
|
return fmt.Sprintf("yq (https://github.com/mikefarah/yq/) version %s\n", getHumanVersion())
|
||||||
}
|
}
|
||||||
|
|
||||||
func getHumanVersion() string {
|
func getHumanVersion() string {
|
||||||
|
@ -3,7 +3,7 @@ package cmd
|
|||||||
import "testing"
|
import "testing"
|
||||||
|
|
||||||
func TestGetVersionDisplay(t *testing.T) {
|
func TestGetVersionDisplay(t *testing.T) {
|
||||||
var expectedVersion = ProductName + " version " + Version
|
var expectedVersion = ProductName + " (https://github.com/mikefarah/yq/) version " + Version
|
||||||
if VersionPrerelease != "" {
|
if VersionPrerelease != "" {
|
||||||
expectedVersion = expectedVersion + "-" + VersionPrerelease
|
expectedVersion = expectedVersion + "-" + VersionPrerelease
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user