mirror of
https://github.com/mikefarah/yq.git
synced 2024-12-19 20:19:04 +00:00
v4.31.1
This commit is contained in:
parent
3f13bf65a1
commit
814a6114a8
@ -51,6 +51,7 @@
|
|||||||
* [Reduce](operators/reduce.md)
|
* [Reduce](operators/reduce.md)
|
||||||
* [Reverse](operators/reverse.md)
|
* [Reverse](operators/reverse.md)
|
||||||
* [Select](operators/select.md)
|
* [Select](operators/select.md)
|
||||||
|
* [Shuffle](operators/shuffle.md)
|
||||||
* [Slice Array](operators/slice-array.md)
|
* [Slice Array](operators/slice-array.md)
|
||||||
* [Sort](operators/sort.md)
|
* [Sort](operators/sort.md)
|
||||||
* [Sort Keys](operators/sort-keys.md)
|
* [Sort Keys](operators/sort-keys.md)
|
||||||
|
@ -86,6 +86,30 @@ a: cool
|
|||||||
updated: 2021-05-19T01:02:03Z
|
updated: 2021-05-19T01:02:03Z
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## From Unix
|
||||||
|
Converts from unix time. Note, you don't have to pipe through the tz operator :)
|
||||||
|
|
||||||
|
Running
|
||||||
|
```bash
|
||||||
|
yq --null-input '1675301929 | from_unix | tz("UTC")'
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
2023-02-02T01:38:49Z
|
||||||
|
```
|
||||||
|
|
||||||
|
## To Unix
|
||||||
|
Converts to unix time
|
||||||
|
|
||||||
|
Running
|
||||||
|
```bash
|
||||||
|
yq --null-input 'now | to_unix'
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
1621386123
|
||||||
|
```
|
||||||
|
|
||||||
## Timezone: from standard RFC3339 format
|
## Timezone: from standard RFC3339 format
|
||||||
Returns a new datetime in the specified timezone. Specify standard IANA Time Zone format or 'utc', 'local'. When given a single parameter, this assumes the datetime is in RFC3339 format.
|
Returns a new datetime in the specified timezone. Specify standard IANA Time Zone format or 'utc', 'local'. When given a single parameter, this assumes the datetime is in RFC3339 format.
|
||||||
|
|
||||||
|
@ -16,6 +16,8 @@ These operators are useful to process yaml documents that have stringified embed
|
|||||||
| TSV | from_tsv/@tsvd | to_tsv/@tsv |
|
| TSV | from_tsv/@tsvd | to_tsv/@tsv |
|
||||||
| XML | from_xml/@xmld | to_xml(i)/@xml |
|
| XML | from_xml/@xmld | to_xml(i)/@xml |
|
||||||
| Base64 | @base64d | @base64 |
|
| Base64 | @base64d | @base64 |
|
||||||
|
| URI | @urid | @uri |
|
||||||
|
| Shell | | @sh |
|
||||||
|
|
||||||
|
|
||||||
See CSV and TSV [documentation](https://mikefarah.gitbook.io/yq/usage/csv-tsv) for accepted formats.
|
See CSV and TSV [documentation](https://mikefarah.gitbook.io/yq/usage/csv-tsv) for accepted formats.
|
||||||
@ -435,6 +437,50 @@ will output
|
|||||||
YTogYXBwbGUK
|
YTogYXBwbGUK
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Encode a string to uri
|
||||||
|
Given a sample.yml file of:
|
||||||
|
```yaml
|
||||||
|
coolData: this has & special () characters *
|
||||||
|
```
|
||||||
|
then
|
||||||
|
```bash
|
||||||
|
yq '.coolData | @uri' sample.yml
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
this+has+%26+special+%28%29+characters+%2A
|
||||||
|
```
|
||||||
|
|
||||||
|
## Decode a URI to a string
|
||||||
|
Given a sample.yml file of:
|
||||||
|
```yaml
|
||||||
|
this+has+%26+special+%28%29+characters+%2A
|
||||||
|
```
|
||||||
|
then
|
||||||
|
```bash
|
||||||
|
yq '@urid' sample.yml
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
this has & special () characters *
|
||||||
|
```
|
||||||
|
|
||||||
|
## Encode a string to sh
|
||||||
|
Sh/Bash friendly string
|
||||||
|
|
||||||
|
Given a sample.yml file of:
|
||||||
|
```yaml
|
||||||
|
coolData: strings with spaces and a 'quote'
|
||||||
|
```
|
||||||
|
then
|
||||||
|
```bash
|
||||||
|
yq '.coolData | @sh' sample.yml
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
strings' with spaces and a '\'quote\'
|
||||||
|
```
|
||||||
|
|
||||||
## Decode a base64 encoded string
|
## Decode a base64 encoded string
|
||||||
Decoded data is assumed to be a string.
|
Decoded data is assumed to be a string.
|
||||||
|
|
||||||
|
51
operators/shuffle.md
Normal file
51
operators/shuffle.md
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
# Shuffle
|
||||||
|
|
||||||
|
Shuffles an array. Note that this command does _not_ use a cryptographically secure random number generator to randomise the array order.
|
||||||
|
|
||||||
|
|
||||||
|
## Shuffle array
|
||||||
|
Given a sample.yml file of:
|
||||||
|
```yaml
|
||||||
|
- 1
|
||||||
|
- 2
|
||||||
|
- 3
|
||||||
|
- 4
|
||||||
|
- 5
|
||||||
|
```
|
||||||
|
then
|
||||||
|
```bash
|
||||||
|
yq 'shuffle' sample.yml
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
- 5
|
||||||
|
- 2
|
||||||
|
- 4
|
||||||
|
- 1
|
||||||
|
- 3
|
||||||
|
```
|
||||||
|
|
||||||
|
## Shuffle array in place
|
||||||
|
Given a sample.yml file of:
|
||||||
|
```yaml
|
||||||
|
cool:
|
||||||
|
- 1
|
||||||
|
- 2
|
||||||
|
- 3
|
||||||
|
- 4
|
||||||
|
- 5
|
||||||
|
```
|
||||||
|
then
|
||||||
|
```bash
|
||||||
|
yq '.cool |= shuffle' sample.yml
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
cool:
|
||||||
|
- 5
|
||||||
|
- 2
|
||||||
|
- 4
|
||||||
|
- 1
|
||||||
|
- 3
|
||||||
|
```
|
||||||
|
|
@ -25,6 +25,28 @@ will output
|
|||||||
- a: cat
|
- a: cat
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Sort by multiple fields
|
||||||
|
Given a sample.yml file of:
|
||||||
|
```yaml
|
||||||
|
- a: dog
|
||||||
|
- a: cat
|
||||||
|
b: banana
|
||||||
|
- a: cat
|
||||||
|
b: apple
|
||||||
|
```
|
||||||
|
then
|
||||||
|
```bash
|
||||||
|
yq 'sort_by(.a, .b)' sample.yml
|
||||||
|
```
|
||||||
|
will output
|
||||||
|
```yaml
|
||||||
|
- a: cat
|
||||||
|
b: apple
|
||||||
|
- a: cat
|
||||||
|
b: banana
|
||||||
|
- a: dog
|
||||||
|
```
|
||||||
|
|
||||||
## Sort descending by string field
|
## Sort descending by string field
|
||||||
Use sort with reverse to sort in descending order.
|
Use sort with reverse to sort in descending order.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user