Introduction
jawk
is an AWK like command line tool that reads a stream of JSON values, manipulate them and produce an output.
See source code in here.
Getting jawk
There are a few ways to install jawk
:
From source
To install jawk
from source, make sure you have the Rust toolchain installed. See details in here
From the repository
To install jawk
from the repository, one need to clone the repository, build the tool and copy the executable to the path.
For example, on linux (assuming ~/bin
is in the path):
git clone https://github.com/yift/jawk
cd jawk
cargo build -r
cp target/release/jawk ~/bin
Using Cargo
To install jawk using Cargo, one can simply run:
cargo install jawk
(To install rust see here).
From Docker
One can use jawk
docker container. Please note that this will not allow you to access any local files (unless you add them to the container volumes).
For example:
echo '{"a": 1}{"a": 10}{"a": 32}' | docker run -i --rm yiftach/jawk --select '.a=a' -o csv
(To install docker see here).
From binary
Some operating system binaries are available in:
Getting Started
jawk
is a command line tool thatshould be able to instract with other command line tools.
Inputs
By default, jawk
will read the input from the standart input (which can be piped from a previous command), but one can specify a file or directory in the command line, in that case, jawk
will read from those files (if one of them is a directrory, jawk
will read from all the readable files under that directory).
The inputs should be JSON values (objects, arrays, strings, numbers, Booleans and null). By default, if part of the input is not a valid JSON value, jawk
will ignore it and will procceed to the next value.
jawk
will then process each value on it's own, and will omit output for each value.
Example
Running:
echo '
100
{"key-1": true, "key-2": false}
"string"
nop
[null, 1, 2, 3]
' | jawk
Will return:
100
{"key-1": true, "key-2": false}
"string"
[null, 1, 2, 3]
Selection
One can specify a few selection to perform on each value using the --select
argument. See more details in the selection.
Example
Running:
echo '
100
{"key-1": true, "key-2": false}
"string"
nop
[null, 1, 2, 3]
' | jawk --select '(.len)=len'
Will return:
{}
{"len": 2}
{"len": 6}
{"len": 4}
Output
By default the output will be a single line JSON for each valid value in the input. On can change this to CSV, text, or other styles of JSON. For more details see the command line help.
Example
Running:
echo '
{"key-1": true, "key-2": false}
"string"
100
nop
[null, 1, 2, 3]
' | jawk --select '(.len)=len' -o csv
Will return:
"len"
2
6
4
Command-Line Help for jawk
This document contains the help content for the jawk
command-line program.
Command Overview:
jawk
An AWK like toold for JSON input.
This tool should allow one to manipulate an input file that contains JSON values into CSV or JSON output. See more details in https://jawk.ykaplan.me/
Usage: jawk [OPTIONS] [FILES]...
Arguments:
<FILES>
— Input files
Options:
-
--on-error <ON_ERROR>
— What to do on errorDefault value:
ignore
Possible values:
ignore
: Do nothing with the errorpanic
: Exit the process on the first errorstderr
: Output the errors to stderrstdout
: Output the errors to stdout
-
-c
,--choose <CHOOSE>
— What to output -
-f
,--filter <FILTER>
— Filter the output. The expected format is<selection>
-
-b
,--break-by <BREAK_BY>
— Split the input by -
-g
,--group-by <GROUP_BY>
— Group the output by -
-s
,--sort-by <SORT_BY>
— How to order the output. Allow muttiploe sorting -
-k
,--skip <SKIP>
— How many results to skip (if any)Default value:
0
-
-t
,--take <TAKE>
— Maximal number of result to process -
-a
,--additional-help <ADDITIONAL_HELP>
— Additional helpPossible values:
book
: Open the bookselection
: Additional help about the selectionfunctions
: Additional help about the available functionsbasic
: Additional help about the basic functions groupflow
: Additional help about the flow functions groupcollection
: Additional help about the collection functions grouptypes
: Additional help about the types functions groupcheck_types
: Additional help about the check_types functions groupcast
: Additional help about the cast functions grouplist
: Additional help about the list functions grouplist_producers
: Additional help about the list_producers functions grouplist_manipluations
: Additional help about the list_manipluations functions grouplist_functional
: Additional help about the list_functional functions grouplist_folding
: Additional help about the list_folding functions groupobject
: Additional help about the object functions groupobject_to_list
: Additional help about the object_to_list functions groupsort_objects
: Additional help about the sort_objects functions groupmanipulate_object
: Additional help about the manipulate_object functions groupfunctional_object
: Additional help about the functional_object functions groupnumber
: Additional help about the number functions groupstring
: Additional help about the string functions groupparse_and_stringify
: Additional help about the parse_and_stringify functions groupregex
: Additional help about the regex functions groupboolean
: Additional help about the boolean functions groupcompare
: Additional help about the compare functions grouplogical
: Additional help about the logical functions grouptime
: Additional help about the time functions groupvariables
: Additional help about the variables functions groupproccess
: Additional help about the proccess functions groupnas
: Additional help about the nas functions groupnas_arithmetic
: Additional help about the nas_arithmetic functions groupnas_compare
: Additional help about the nas_compare functions group
-
-u
,--unique
— Avoid posting the same output more than oncePossible values:
true
,false
-
-e
,--set <SET>
— Predefine variables and macros -
--regular-expression-cache-size <REGULAR_EXPRESSION_CACHE_SIZE>
— Regular expression cache sizeDefault value:
0
-
--only-objects-and-arrays
— Only accept objects and arrayPossible values:
true
,false
-
-o
,--output-style <OUTPUT_STYLE>
— How to display the outputDefault value:
json
Possible values:
json
: pretty JSON outputcsv
: CSV file format. This must have selection and can not be a produce of group by as we need to know the columnstext
: Raw text output
-
-r
,--row-seperator <ROW_SEPERATOR>
— Row seperatorDefault value:
-
--style <STYLE>
— Json output styleDefault value:
one-line
Possible values:
one-line
: One line JSONconsise
: Consise JSON output (no unneeded white spaces)pretty
: Pretty JSON output
-
--utf8-strings
— Output string literal as UTF8 for JSON, (by default only ASCII will be used, and everything else will be escaped)Default value:
false
Possible values:
true
,false
-
--items-seperator <ITEMS_SEPERATOR>
— Seperate items by (for text output)Default value:
-
--string-prefix <STRING_PREFIX>
— What to add before a String value (for text output)Default value: ``
-
--string-postfix <STRING_POSTFIX>
— What to add after a String value (for text output)Default value: ``
-
--headers
— Include headers (for text output)Default value:
false
Possible values:
true
,false
-
--escape-sequance <ESCAPE_SEQUANCE>
— Escape sequance. Can be set more than once. should be used with the escaped character followed by the excpaed sequance. For example,"\"
will set the"`` to be escaped by a
"` (for text output) -
--null-keyword <NULL_KEYWORD>
— How to display nulls values (for text output)Default value:
null
-
--true-keyword <TRUE_KEYWORD>
— How to display true values (for text output)Default value:
true
-
--false-keyword <FALSE_KEYWORD>
— How to display false values (for text output)Default value:
false
-
--missing-value-keyword <MISSING_VALUE_KEYWORD>
— How to display missing values (for text output)
This document was generated automatically by
clap-markdown
.
Selection
There are 7 types of selectoion:
Extraction
Used to extract data from the input.
- Use
.
to get the input as is. - Use
.<name>
to access a key within an object. If the name has spaces, use theget
function instead. - Use
#<index>
to access an element in an array. - Use
^
to access the "parent" input. That is, while in a functional function - likefilter
ormap
- use^
to access the original input and^^
to access the input of that input and so on. - One can use a combination of all of the aboove, i.e.
^.key-1.key-2#3.key-4
.
Examples
- For selection:
.
for input:{"key": 12}
will produce:{"key": 12}
. - For selection:
.key-1.key-2
for input:{"key-1": {"key-2": 300}}
will produce:300
. - For selection:
.key-1.key-2
for input:{"key-3": {"key-2": 300}}
will produce nothing. - For selection:
.key-1#3
for input:{"key-1": ["a", "b", 3, "word", 6]}
will produce:"word"
. - For selection:
(.map (.map (.+ (size ^.) (size ^^.))))
for input:[[1, 2, 3], [4, 5], [6]]
will produce:[[7, 8, 9], [9, 10], [10]]
.
Literal value
Used to select constant value. Use a simple JSON format. The input is ignored.
Examples
- For selection:
4001.1
regardless of the input will produce:4001.1
. - For selection:
null
regardless of the input will produce:null
. - For selection:
"test"
regardless of the input will produce:"test"
. - For selection:
[1, 4, {}, 100]
regardless of the input will produce:[1, 4, {}, 100]
.
Function
Invoke a function. Has a format of (<function-name> <arg0> <arg1> ..)
where <argN>
are other selection.
Alternative format is (.<function-name> <arg1>...)
- in that case, the first argument will be the input (i.e. .
).
The argument can be seperated by comma or whitespace.
See list of available functions in functions additional help.
Examples
- For selection:
(len .)
for input:[1, 4, {}, 100]
will produce:4
. - For selection:
(.len)
for input:[1, 4, {}, 100]
will produce:4
. - For selection:
(len .list)
for input:{"list": [1, 4, {}, 100]}
will produce:4
. - For selection:
(map (range 10) (+ . 5))
regardless of the input will produce:[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
.
Variables
Use a variable (either one the was predefined by the set
command line argument or one that was defined by the set
function).
The format to use varaibles is :<variable-name>
. Note that the variable is defiend once.
Examples
- For selection:
:nothing
regardless of the input will produce nothing. - For selection:
(set "length" (.len) (.map (.+ :length)))
for input:[1, 2, 3]
will produce:[4, 5, 6]
.
Macros
Use a macro (either one the was predefined by the set
command line argument or one that was defined by the define
function).
The format to use a macro is @<variable-name>
. Note that the macro is evelated on each call.
Examples
- For selection:
:nothing
regardless of the input will produce nothing. - For selection:
(define "even" (= 0 (.% 2)) (.filter @even))
for input:[1, 2, 3, 4, 5, 6, 7]
will produce:[2, 4, 6]
.
Input context
Use input context to get the context of the input. The available input types are:
&index
- To get the index of the current value within the current run.&index-in-file
- To get the index of the current value within the curent file.&started-at-line-number
- To get the line number within the input file in which the input started.&started-at-char-number
- To get the char number within the line within the input file in which the input started.&ended-at-line-number
- To get the line number within the input file in which the input ended.&ended-at-char-number
- To get the char number within the line within the input file in which the input ended.&file-name
- To get the name of the input file from which the input was parsed (will be empty for stdin input).
Examples
- For selection:
(- &ended-at-char-number &started-at-char-number)
for input:"test"
will produce:6
.
Previous selected values
Reuse previoulsy selected value. Use this to reuse a value that had been selected previously. This is not available during filtering, and one can only refere to values that had been selected before.
The format is /<selection-name>/
where the selection-name is the name of the selection.
Examples
- For selection:
/name/
regardless of the input and previously selected name as"John"
will produce:"John"
. - For selection:
/name/
regardless of the input and previously selected name as nothing will produce nothing. - For selection:
/name/
regardless of the input and previously selected Last Name as"Doe"
will produce nothing.
Functions
Functions allow one to manipulate the input. The functions format is (<function-name> <arg0> <arg1> ..)
where <argN>
are functions or other types of selection.
See additional help for selection for more details.
See additional help with the group name to see the list of available functions in that group.
Function group has those functions and groups:
- Group
basic
-- Group
flow
- Contrlo flow functions - Group
collection
- Functions that allow to use list or maps as collections- Function
get
- Get an item from an array by index or from a map by key. - Function
size
- Get the number of element in an array, - Function
take
- Take the first N of element in an array, object of string - Function
take_last
- Take the last N of element in an array, object of string - Function
sub
- If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument.
- Function
- Group
- Group
types
-- Group
check_types
- Check the type of a value- Function
array?
- return true if the argument is an array. - Function
object?
- return true if the argument is an object. - Function
null?
- return true if the argument is a null. - Function
bool?
- return true if the argument is a boolean. - Function
number?
- return true if the argument is a number. - Function
string?
- return true if the argument is a string. - Function
empty?
- return true if the argument is nothing.
- Function
- Group
cast
- Cast object to a predefine type- Function
as_boolean
- return the Boolean if the argument is a Boolean, nothing if it's not. - Function
as_number
- return the number if the argument is a number, nothing if it's not. - Function
as_string
- return the string if the argument is a string, nothing if it's not. - Function
as_array
- return the array if the argument is an array, nothing if it's not. - Function
as_object
- return the object if the argument is an object, nothing if it's not.
- Function
- Group
- Group
list
-- Group
list_producers
- Functions to create lists - Group
list_manipluations
- Function to manipulatre a list and create a new one- Function
sort
- Sort a list. - Function
sort_unique
- Sort a list and remove duplicates. - Function
indexed
- Map a list into a new list where each element in the new list is an object with two elements: - Function
push
- Add items to a list. - Function
push_front
- Add items to the from of a list. - Function
reverese
- Reveres the order of a list. - Function
pop
- Pop the last item from a list. - Function
pop_first
- Pop the first item from a list.
- Function
- Group
list_functional
- Functional function over a list of items- Function
filter
- Filter a list. - Function
group_by
- Group items by function. - Function
sort_by
- Sort a list. - Function
fold
- Fold all the items in a list into a new value. - Function
map
- Map a list into a new list using a function. - Function
flat_map
- Flat map a list into a new list using a function.
- Function
- Group
list_folding
- Function top fold a list into a single item- Function
sum
- Sum all the items in the list. - Function
any
- Check if any of item in a list is ture. - Function
all
- Check if all the items in a list are true. - Function
join
- Join all the items in the list into a String. - Function
first
- The first item in a list. - Function
last
- The last item in a list.
- Function
- Group
- Group
object
-- Group
object_to_list
- Convert an object into a list - Group
sort_objects
- Sort an object- Function
sort_by_keys
- Sort an object by it's keys. - Function
sort_by_values
- Sort an object by it's values. - Function
sort_by_values_by
- Sort an object by a function to it's values.
- Function
- Group
manipulate_object
- Manipulate objects to pruduce a new object- Function
put
- Add a new entry to a map. - Function
insert_if_absent
- Add a new entry to a map if it has no such key. - Function
replace_if_exists
- Add a new entry to a map if it has such key.
- Function
- Group
functional_object
- Functional function over an object- Function
filter_keys
- Filter an object by keys. - Function
filter_values
- Filter an object by values. - Function
map_values
- Map an object values. - Function
map_keys
- Map an object keys.
- Function
- Group
- Group
number
-- Function
+
- If all the arguments are number, add them. - Function
-
- If there are two numeric arguments, substract the second argument from the first one if both are number. - Function
*
- If all the arguments are number, multiply them. - Function
/
- Divide the firs argument by the second argument. If the second argument is 0 will return nothing - Function
%
- Find the reminder of the division of the firs argument by the second argument. If the second argument is 0 will return nothing - Function
abs
- If the argument is numeric, return it's absolute value. - Function
round
- If the argument is numeric, return it's rounded. - Function
ceil
- If the argument is numeric, return it's ceiling. - Function
floor
- If the argument is numeric, return it's floor.
- Function
- Group
string
-- Function
env
- Get enviornment variable. - Function
concat
- Concat all string arguments. - Function
head
- Extract a string header. - Function
tail
- Extract a string tail. - Function
split
- Split the string into array of strings. - Function
base63_decode
- Decode a BASE64 string and try to convert to a string using UTF8. - Group
parse_and_stringify
- Function to parse from a string or to convert an object into a string- Function
stringify
- Return the JSON represantation of the object. - Function
parse
- Parse a string into JSON value. - Function
parse_selection
- Parse a string into a new selection.
- Function
- Group
regex
- Regular expression functions- Function
match
- Return true if the first string argument match the second regular expression argument. - Function
extract_regex_group
- Return the capture group within the string.
- Function
- Function
- Group
boolean
-- Group
compare
- Compatison functions- Function
=
- Compare two value and return true if both are equals. - Function
!=
- Compare two value and return true if both are not equals. - Function
<
- Compare two value and return true if the first is smaller than the second. - Function
<=
- Compare two value and return true if the first is smaller or eqauls than the second. - Function
>=
- Compare two value and return true if the first is greater or eqauls than the second. - Function
>
- Compare two value and return true if the first is greater than the second.
- Function
- Group
logical
- Logical function- Function
and
- Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument. - Function
or
- Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false. - Function
xor
- Return true if one, and only one, of the argument is true. - Function
not
- Return false if the argument is true and true if the argument is false.
- Function
- Group
- Group
time
-- Function
now
- Return the current time as seconds since epoch. - Function
format_time
- Format a date/time into a string - Function
parse_time_with_zone
- Parse a date/time from a string into seconds since epoc. This version expect to get the time zone as well - Function
parse_time
- Parse a date/time from a string into seconds since epoc
- Function
- Group
variables
-- Function
set
- Set a variable. The first argument should be the variable name, the second one should be the value and the third - Function
:
- Return the value of a named variable. See set for examples. - Function
define
- Define a new macro definition. The first argument should be the macro definition name, the second one should be macro and the third - Function
@
- Return the value of a named variable. See define for examples.
- Function
- Group
proccess
- - Group
nas
- NAS - Number As String, i.e. number that represent as string, like "12" instead of 12.- Group
nas_arithmetic
- Number As String arithmetic functions.- Function
"||"
- If the argument is string as number, return it in a normelize form (to allow a constent uniquness check). - Function
"+"
- If all the arguments are numbers as string number, add them. - Function
"-"
- If there are two numeric arguments, substract the second argument from the first one if both are number. - Function
"*"
- If all the arguments are numbers as string, multiply them. - Function
"/"
- Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing - Function
"%"
- Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing - Function
"abs"
- If the argument is numnber as string, return it's absolute value as string. - Function
"round"
- If the argument is string as number, return it's rounded.
- Function
- Group
nas_compare
- Number As String comparison functions.- Function
"="
- Compare two string as numbers and return true if both are equals. - Function
"!="
- Compare two number as strings and return true if both are not equals. - Function
">"
- Compare two numbers as string and return true if the first is greater than the second. - Function
"<"
- Compare two numbers as string and return true if the first is smaller than the second. - Function
">="
- Compare two numbers and string and return true if the first is greater or eqauls than the second. - Function
"<="
- Compare two numbers and string and return true if the first is smaller or eqauls than the second. - Function
"sort_by"
- Sort a list using number as strings.
- Function
- Group
Use additional help with a function name to see more details about the function.
Function group basic
Function group has those functions and groups:
- Group
flow
- Contrlo flow functions - Group
collection
- Functions that allow to use list or maps as collections- Function
get
- Get an item from an array by index or from a map by key. - Function
size
- Get the number of element in an array, - Function
take
- Take the first N of element in an array, object of string - Function
take_last
- Take the last N of element in an array, object of string - Function
sub
- If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument.
- Function
Use additional help with a function name to see more details about the function.
Function group flow
Contrlo flow functions Function group has those functions and groups:
- Function
|
- Pipe the output of one function to the next function. - Function
default
- Get the first non empty value. - Function
?
- Return the second argument if the first argument is true. Return the third argument
Use additional help with a function name to see more details about the function.
|
function:
Pipe the output of one function to the next function.
Examples:
- running:
(| (get . "key"), (get . 3), (get . "key-2"))
for input:{"key": [20, 40, 60, {"key-2": 100}]}
will give:100
Because the firstget
will return the list in the input, the second one will return the fourth item in the list, and the last one will get thekey-2
element in that item.
- running:
(| (get . 1), (+ . 4), (+ . 10), (+ . (len ^^^)))
for input:[1, 2, 3, 4]
will give:20
Because The first get will return 2, the second one will add 4, then third one will add 10, and the last one will add the size of the original list, so2 + 4 + 10 + 4 = 20
.
default
function:
-
Can also be called as
defaults
-
Can also be called as
or_else
Get the first non empty value.
Examples:
- running:
(default (get . 1), (get . "key-1"), 22)
for input:{"key-1": 1, "key-2": false}
will give:1
Because the first get will return nothing because the input is an object and get should have a string argument, the second get will return 1, which is not a nothing, so it will be the returned value.
- running:
(default (get . 1), (get . "key-3"), 22)
for input:{"key-1": 1, "key-2": false}
will give:22
Because all theget
will return nothing, so 22 is the first non nothing argument.
- running:
(default (.get 1), (.get 2))
for input:100
will return nothing
?
function:
- Can also be called as
if
Return the second argument if the first argument is true. Return the third argument if the first is false. Return nothing if the first argument is not Boolean
Examples:
- running:
(? true, 12, 22)
will give:12
- running:
(? false, 12, 22)
will give:22
- running:
(? (array? .), #1, #2)
for input:[1, 2, 3]
will give:2
- running:
(? (null? .), #1, #2)
for input:[1, 2, 3]
will give:3
- running:
(? 100, true, false)
will return nothing
Function group collection
Functions that allow to use list or maps as collections Function group has those functions and groups:
- Function
get
- Get an item from an array by index or from a map by key. - Function
size
- Get the number of element in an array, - Function
take
- Take the first N of element in an array, object of string - Function
take_last
- Take the last N of element in an array, object of string - Function
sub
- If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument.
Use additional help with a function name to see more details about the function.
get
function:
- Can also be called as
[]
Get an item from an array by index or from a map by key.
Examples:
- running:
(get ["a", "b", "c"], 1)
will give:"b"
- running:
(get {"key-1": 12, "key-2": 32}, "key-1")
will give:12
- running:
(get ["a", "b", "c"], 100)
will return nothing
size
function:
-
Can also be called as
count
-
Can also be called as
length
-
Can also be called as
len
Get the number of element in an array, the number of keys in an object or the number of characters in a string.
Examples:
- running:
(size [1, 2, 3, 4])
will give:4
- running:
(size {"key-1": 1, "key-2": false})
will give:2
- running:
(size "123")
will give:3
- running:
(size 50)
will return nothing Because 50 is not an array, not an object nor a string.
take
function:
- Can also be called as
take_first
Take the first N of element in an array, object of string
Examples:
- running:
(take [1, 2, 3, 4], 2)
will give:[1, 2]
- running:
(take [1, 2, 3, 4], 6)
will give:[1, 2, 3, 4]
- running:
(take {"key-1": 1, "key-2": false}, 1)
will give:{"key-1": 1}
- running:
(take {"key-1": 1, "key-2": false}, 3)
will give:{"key-1": 1, "key-2": false}
- running:
(take "123", 2)
will give:"12"
- running:
(take "123", 20)
will give:"123"
- running:
(take 50, 10)
will return nothing
- running:
(take "123", false)
will return nothing
take_last
function:
Take the last N of element in an array, object of string
Examples:
- running:
(take_last [1, 2, 3, 4], 2)
will give:[3, 4]
- running:
(take_last [1, 2, 3, 4], 6)
will give:[1, 2, 3, 4]
- running:
(take_last {"key-1": 1, "key-2": false}, 1)
will give:{"key-2": false}
- running:
(take_last {"key-1": 1, "key-2": false}, 3)
will give:{"key-1": 1, "key-2": false}
- running:
(take_last "123", 2)
will give:"23"
- running:
(take_last "123", 20)
will give:"123"
- running:
(take_last 50, 10)
will return nothing
- running:
(take_last "123", false)
will return nothing
sub
function:
If the first argument is a list, creates a new list that start from the second arguments and has the size of the third argument. If the first argument is an object, creates a new object that start from the second arguments and has the size of the third argument. If the first argument is a string, creates a substring that start from the second arguments and has the size of the third argument.
Examples:
- running:
(sub [1, 2, 3, 4, 5, 6], 2, 3)
will give:[3, 4, 5]
- running:
(sub [1, 2, 3, 4], 6, 10)
will give:[]
- running:
(sub [1, 2, 3, 4], 0, 10)
will give:[1, 2, 3, 4]
- running:
(sub [1, 2, 3, 4], 1, 10)
will give:[2, 3, 4]
- running:
(sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 1, 2)
will give:{"key-2": 2, "key-3": 3}
- running:
(sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 0, 2)
will give:{"key-1": 1, "key-2": 2}
- running:
(sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 4, 10)
will give:{"key-5": 5, "key-6": 6}
- running:
(sub {"key-1": 1, "key-2": 2, "key-3": 3, "key-4": 4, "key-5": 5, "key-6": 6}, 20, 10)
will give:{}
- running:
(sub "123456", 1, 3)
will give:"234"
- running:
(sub "123456", 1, 30)
will give:"23456"
- running:
(sub "123456", 0, 30)
will give:"123456"
- running:
(sub "123456", 20, 30)
will give:""
- running:
(sub "123456", 2, 0)
will give:""
- running:
(sub 50, 0, 10)
will return nothing
- running:
(sub "123", false, 10)
will return nothing
- running:
(sub "123", 10, {})
will return nothing
Function group types
Function group has those functions and groups:
- Group
check_types
- Check the type of a value- Function
array?
- return true if the argument is an array. - Function
object?
- return true if the argument is an object. - Function
null?
- return true if the argument is a null. - Function
bool?
- return true if the argument is a boolean. - Function
number?
- return true if the argument is a number. - Function
string?
- return true if the argument is a string. - Function
empty?
- return true if the argument is nothing.
- Function
- Group
cast
- Cast object to a predefine type- Function
as_boolean
- return the Boolean if the argument is a Boolean, nothing if it's not. - Function
as_number
- return the number if the argument is a number, nothing if it's not. - Function
as_string
- return the string if the argument is a string, nothing if it's not. - Function
as_array
- return the array if the argument is an array, nothing if it's not. - Function
as_object
- return the object if the argument is an object, nothing if it's not.
- Function
Use additional help with a function name to see more details about the function.
Function group check_types
Check the type of a value Function group has those functions and groups:
- Function
array?
- return true if the argument is an array. - Function
object?
- return true if the argument is an object. - Function
null?
- return true if the argument is a null. - Function
bool?
- return true if the argument is a boolean. - Function
number?
- return true if the argument is a number. - Function
string?
- return true if the argument is a string. - Function
empty?
- return true if the argument is nothing.
Use additional help with a function name to see more details about the function.
array?
function:
- Can also be called as
list?
return true if the argument is an array.
Examples:
- running:
(array? [1, 2, 3, 4])
will give:true
- running:
(array? 312)
will give:false
object?
function:
-
Can also be called as
map?
-
Can also be called as
hash?
return true if the argument is an object.
Examples:
- running:
(object? [1, 2, 3, 4])
will give:false
- running:
(object? {"key": 12})
will give:true
null?
function:
- Can also be called as
nil?
return true if the argument is a null.
Examples:
- running:
(null? null)
will give:true
- running:
(null? 1)
will give:false
bool?
function:
- Can also be called as
boolean?
return true if the argument is a boolean.
Examples:
- running:
(bool? false)
will give:true
- running:
(bool? "false")
will give:false
number?
function:
return true if the argument is a number.
Examples:
- running:
(number? "str")
will give:false
- running:
(number? 1.32)
will give:true
string?
function:
return true if the argument is a string.
Examples:
- running:
(string? "one")
will give:true
- running:
(string? 1.32)
will give:false
empty?
function:
- Can also be called as
nothing?
return true if the argument is nothing.
Examples:
- running:
(empty? "one")
will give:false
- running:
(empty? .key)
for input:{}
will give:true
Function group cast
Cast object to a predefine type Function group has those functions and groups:
- Function
as_boolean
- return the Boolean if the argument is a Boolean, nothing if it's not. - Function
as_number
- return the number if the argument is a number, nothing if it's not. - Function
as_string
- return the string if the argument is a string, nothing if it's not. - Function
as_array
- return the array if the argument is an array, nothing if it's not. - Function
as_object
- return the object if the argument is an object, nothing if it's not.
Use additional help with a function name to see more details about the function.
as_boolean
function:
- Can also be called as
as_bool
return the Boolean if the argument is a Boolean, nothing if it's not.
Examples:
- running:
(as_boolean false)
will give:false
- running:
(as_boolean true)
will give:true
- running:
(as_boolean 312)
will return nothing
as_number
function:
return the number if the argument is a number, nothing if it's not.
Examples:
- running:
(as_number 100)
will give:100
- running:
(as_number -4.2)
will give:-4.2
- running:
(as_number false)
will return nothing
as_string
function:
return the string if the argument is a string, nothing if it's not.
Examples:
- running:
(as_string "text")
will give:"text"
- running:
(as_string 312)
will return nothing
as_array
function:
- Can also be called as
as_list
return the array if the argument is an array, nothing if it's not.
Examples:
- running:
(as_array [1, 2, 3, 4])
will give:[1, 2, 3, 4]
- running:
(as_array 312)
will return nothing
as_object
function:
-
Can also be called as
as_map
-
Can also be called as
as_hash
return the object if the argument is an object, nothing if it's not.
Examples:
- running:
(as_object {"key": 12})
will give:{"key": 12}
- running:
(as_object 312)
will return nothing
Function group list
Function group has those functions and groups:
- Group
list_producers
- Functions to create lists - Group
list_manipluations
- Function to manipulatre a list and create a new one- Function
sort
- Sort a list. - Function
sort_unique
- Sort a list and remove duplicates. - Function
indexed
- Map a list into a new list where each element in the new list is an object with two elements: - Function
push
- Add items to a list. - Function
push_front
- Add items to the from of a list. - Function
reverese
- Reveres the order of a list. - Function
pop
- Pop the last item from a list. - Function
pop_first
- Pop the first item from a list.
- Function
- Group
list_functional
- Functional function over a list of items- Function
filter
- Filter a list. - Function
group_by
- Group items by function. - Function
sort_by
- Sort a list. - Function
fold
- Fold all the items in a list into a new value. - Function
map
- Map a list into a new list using a function. - Function
flat_map
- Flat map a list into a new list using a function.
- Function
- Group
list_folding
- Function top fold a list into a single item- Function
sum
- Sum all the items in the list. - Function
any
- Check if any of item in a list is ture. - Function
all
- Check if all the items in a list are true. - Function
join
- Join all the items in the list into a String. - Function
first
- The first item in a list. - Function
last
- The last item in a list.
- Function
Use additional help with a function name to see more details about the function.
Function group list_producers
Functions to create lists Function group has those functions and groups:
- Function
range
- Create a new list with items from 0 to the second argument. - Function
zip
- Zip a few list into a new list. - Function
cross
- Join a few list (i.e. Cartesian product) into a new list.
Use additional help with a function name to see more details about the function.
range
function:
Create a new list with items from 0 to the second argument. If the second argument is not a positive integer, return nothing. Be carefull not to use large numbers.
Examples:
- running:
(range 4)
will give:[0, 1, 2, 3]
- running:
(range -4)
will return nothing
- running:
(range [1, 2, 3, 4])
will return nothing
zip
function:
Zip a few list into a new list.
All the arguments must be lists.
The output will be a list of object, with keys in the format ".i"
where i
is the index list.
Examples:
- running:
(zip ["one", "two", "three"], [1, 2, 3])
will give:[{".0": "one", ".1": 1}, {".0": "two", ".1": 2}, {".0": "three", ".1": 3}]
- running:
(zip ["one", "two", "three"], [1, 2, 3], [false])
will give:[{".0": "one", ".1": 1, ".2": false}, {".0": "two", ".1": 2}, {".0": "three", ".1": 3}]
- running:
(zip ["one", "two", "three"], [1, 2, 3], 6)
will return nothing
cross
function:
Join a few list (i.e. Cartesian product) into a new list. All the arguments must be lists. The output will be a list of object, with keys in the format ".i".
Examples:
- running:
(cross ["one", "two"], [1, 2], [true], [false])
will give:[{".0": "one", ".1": 1, ".2": true, ".3": false}, {".0": "two", ".1": 1, ".2": true, ".3": false}, {".0": "one", ".1": 2, ".2": true, ".3": false}, {".0": "two", ".1": 2, ".2": true, ".3": false}]
- running:
(cross ["one", "two", "three"], [1, 2, 3], 6)
will return nothing
Function group list_manipluations
Function to manipulatre a list and create a new one Function group has those functions and groups:
- Function
sort
- Sort a list. - Function
sort_unique
- Sort a list and remove duplicates. - Function
indexed
- Map a list into a new list where each element in the new list is an object with two elements: - Function
push
- Add items to a list. - Function
push_front
- Add items to the from of a list. - Function
reverese
- Reveres the order of a list. - Function
pop
- Pop the last item from a list. - Function
pop_first
- Pop the first item from a list.
Use additional help with a function name to see more details about the function.
sort
function:
- Can also be called as
order
Sort a list. If the first argument is a list, return list sorted.
Examples:
- running:
(sort [1, -2, 3.01, 3.05, -544, 100])
will give:[-544, -2, 1, 3.01, 3.05, 100]
- running:
(sort [1, 2, 3, 2, 3, 3])
will give:[1, 2, 2, 3, 3, 3]
- running:
(sort [null, true, false, {}, [1, 2, 3], "abc", "cde", {"key": 12}])
will give:[null, false, true, "abc", "cde", {}, {"key": 12}, [1, 2, 3]]
- running:
(sort 344)
will return nothing
sort_unique
function:
- Can also be called as
order_unique
Sort a list and remove duplicates. If the first argument is a list, return list sorted without duplicates.
Examples:
- running:
(sort_unique [1, -2, 3.01, 3.05, -544, 100])
will give:[-544, -2, 1, 3.01, 3.05, 100]
- running:
(sort_unique [1, 2, 3, 2, 3, 3])
will give:[1, 2, 3]
- running:
(sort_unique [null, true, false, {}, [1, 2, 3], "abc", "cde", {"key": 12}])
will give:[null, false, true, "abc", "cde", {}, {"key": 12}, [1, 2, 3]]
- running:
(sort_unique 344)
will return nothing
indexed
function:
Map a list into a new list where each element in the new list is an object with two elements:
index
with the index of the element in the listvalue
with the element in the original list Can be used later for filters or map based on index. If the first argument is not a list will return nothing.
Examples:
- running:
(indexed [false, null, 10, {}])
will give:[{"value": false, "index": 0}, {"value": null, "index": 1}, {"value": 10, "index": 2}, {"value": {}, "index": 3}]
- running:
(indexed {})
will return nothing
push
function:
- Can also be called as
push_back
Add items to a list. If the first argument is a list, will iterate over all the other arguments and add them to the list if they exists.
Examples:
- running:
(push [], 1, 2, 3, 4)
will give:[1, 2, 3, 4]
- running:
(push ["a"], "b")
will give:["a", "b"]
- running:
(push ["a"], (push 1 1))
will give:["a"]
- running:
(push -4, -4)
will return nothing
push_front
function:
Add items to the from of a list. If the first argument is a list, will iterate over all the other arguments and add them to the list if they exists.
Examples:
- running:
(push_front [], 1, 2, 3, 4)
will give:[4, 3, 2, 1]
- running:
(push_front ["a" ,1 ], "b")
will give:["b", "a", 1]
- running:
(push_front ["a"], (push 1 1))
will give:["a"]
- running:
(push_front -4, -4)
will return nothing
reverese
function:
Reveres the order of a list. If the first argument is a list, will iterate over all the other arguments and add them to the list if they exists.
Examples:
- running:
(reverese [1, 2, 3, 4])
will give:[4, 3, 2, 1]
- running:
(reverese 1)
will return nothing
pop
function:
- Can also be called as
pop_last
Pop the last item from a list. If the argument is a list, will return the list without it's last argument.
Examples:
- running:
(pop [1, 2, 3, 4])
will give:[1, 2, 3]
- running:
(pop [])
will give:[]
- running:
(pop false)
will return nothing
pop_first
function:
Pop the first item from a list. If the argument is a list, will return the list without it's first argument.
Examples:
- running:
(pop_first [1, 2, 3, 4])
will give:[2, 3, 4]
- running:
(pop_first [])
will give:[]
- running:
(pop_first false)
will return nothing
Function group list_functional
Functional function over a list of items Function group has those functions and groups:
- Function
filter
- Filter a list. - Function
group_by
- Group items by function. - Function
sort_by
- Sort a list. - Function
fold
- Fold all the items in a list into a new value. - Function
map
- Map a list into a new list using a function. - Function
flat_map
- Flat map a list into a new list using a function.
Use additional help with a function name to see more details about the function.
filter
function:
Filter a list. If the first argument is a list, return all the values for which the second argument is a list.
Examples:
- running:
(filter [1, 2, 3, 4], true)
will give:[1, 2, 3, 4]
- running:
(filter [1, 2, 3, 4], null)
will give:[]
- running:
(filter [1, 2, 3, 4, "one", null], (string? .))
will give:["one"]
Because only the value"one"
is a string.
- running:
(filter ., (.number?))
for input:[1, 2, null, "a", 4]
will give:[1, 2, 4]
- running:
(filter {}, true)
will return nothing
group_by
function:
Group items by function. If the first argument is a list, return list grouped by the second argument.
Examples:
- running:
(group_by ["11", "5", "23", "ab", "1", "", "100", {}], (stringify (len .)))
will give:{"2": ["11", "23", "ab"], "1": ["5", "1"], "0": ["", {}], "3": ["100"]}
- running:
(group_by [{"g": "one", "v": 1}, {"g": "two", "v": 2}, {"g": "one", "v": 33}, {"g": "two", "v": false}], .g)
will give:{"one": [{"g": "one", "v": 1}, {"g": "one", "v": 33}], "two": [{"g": "two", "v": 2}, {"g": "two", "v": false}]}
- running:
(group_by [{"g": "one", "v": 1}, {"g": "two", "v": 2}, {"g": "one", "v": 33}, {"g": "two", "v": false}], (get . ^.key))
for input:{"key": "g"}
will give:{"one": [{"g": "one", "v": 1}, {"g": "one", "v": 33}], "two": [{"g": "two", "v": 2}, {"g": "two", "v": false}]}
Because this group the element by a key that is taken from the input ("key"
).
- running:
(group_by 344, (stringify (len .)))
will return nothing
- running:
(group_by ["11", "5", "23", "ab", "1", "", "100", {}], (len .))
will return nothing
sort_by
function:
- Can also be called as
order_by
Sort a list. If the first argument is a list, return list sorted by the second argument.
Examples:
- running:
(sort_by ["12345", "5", "23", "abc", "-1-2", ""], (len .))
will give:["", "5", "23", "abc", "-1-2", "12345"]
Because it sort the elements by their length, so the empty string (length zero) is the first.
- running:
(sort_by true, (len .))
will return nothing
- running:
(sort_by ["12345", "", 10], (len .))
will give:[10, "", "12345"]
Because the number10
has no length, so it will be the first.
fold
function:
Fold all the items in a list into a new value.
The first item should be the list, the second one the initial value and the third one a function that create the fold.
If the fuinction has only two arguments, the initial value will not be set.
The function will accespt as input an hash with value
, index
and so_far
keys (if the previous run returned nothing, the so_far
will be empty).
Examples:
- running:
(fold [1, 10, 0.6], 100, (+ .index .so_far .value))
will give:114.6
Because the first argument is 100, and then the fold will add all the argument in the list, 100 + 1 + 10 + 0.6 = 114.6.
- running:
(fold [1, 10, 0.6], (? (number? .so_far) (+ .so_far .value) .value))
will give:11.6
Because ifso_far
is not a number, we started the fold, so we can return the value, hene this is a simple sum, 1 + 10 + 0.6 = 11.6.
- running:
(fold {}, 1, 2)
will return nothing
map
function:
Map a list into a new list using a function. If the first argument is a list, activate the second argument on each item and collect into a new list.
Examples:
- running:
(map [1, 2, 3, 4], (+ . 4))
will give:[5, 6, 7, 8]
- running:
(map [1, 2, 3, 4], (.len))
will give:[]
- running:
(map [1, 2, 3, "4"], (* . 2))
will give:[2, 4, 6]
Because"4"
is a string and not a number, so it can't be multiple.
- running:
(map ., (+ 2 .))
for input:[1, 2, null, "a", 4]
will give:[3, 4, 6]
- running:
(map .list, (+ ^.add .))
for input:{"list": [1, 2, 3, 4], "add": 12}
will give:[13, 14, 15, 16]
- running:
(map ., (map . (+ (len ^^.) .)))
for input:[[1, 2, 3, 4], [1, 2, 3], [6, 7]]
will give:[[4, 5, 6, 7], [4, 5, 6], [9, 10]]
Because it will add the length of the input list (i.e. 3) to each item in each list in that list.
- running:
(map {}, true)
will return nothing
flat_map
function:
Flat map a list into a new list using a function. If the first argument is a list, activate the second argument on each item, and if that returns a list, add all the items to a new list.
Examples:
- running:
(flat_map ["a,b,c", "d,e", 4, "g"], (split . ","))
will give:["a", "b", "c", "d", "e", "g"]
Because it will split each element by the comma, and return a list of all those lists.
- running:
(flat_map [1, 2, 3, 4], (.len))
will give:[]
- running:
(flat_map {}, true)
will return nothing
Function group list_folding
Function top fold a list into a single item Function group has those functions and groups:
- Function
sum
- Sum all the items in the list. - Function
any
- Check if any of item in a list is ture. - Function
all
- Check if all the items in a list are true. - Function
join
- Join all the items in the list into a String. - Function
first
- The first item in a list. - Function
last
- The last item in a list.
Use additional help with a function name to see more details about the function.
sum
function:
Sum all the items in the list.
If list have non numeric items, it will return nuthing.
One can filter
with number?
to ensure there is a result.
Examples:
- running:
(sum [1, 5, 1.1])
will give:7.1
- running:
(sum [])
will give:0
- running:
(sum [1, 5, 1.1, "text"])
will return nothing
any
function:
Check if any of item in a list is ture.
Examples:
- running:
(any [1, 5, false, 1.1])
will give:false
- running:
(any (map (range 4) (.= 2)))
will give:true
Because there is 2 in the list of numbers from 0 to 4.
- running:
(any (map (range 4) (.= 12)))
will give:false
Because there is no 12 in the list of numbers from 0 to 4.
- running:
(any [])
will give:false
- running:
(any [1, 2, true, false, 4])
will give:true
- running:
(any {})
will return nothing
all
function:
Check if all the items in a list are true. Will return false if the list is empty .
Examples:
- running:
(all [1, 5, false, 1.1])
will give:false
- running:
(all [true, true, 1, true, true])
will give:false
- running:
(all (map (range 4) (.= 2)))
will give:false
Because not all the numbers between 0 and 4 are 2.
- running:
(all (map (range 4) (.< 10)))
will give:true
Because all the numbers between 0 and 4 less than 10.
- running:
(all [true, true, false, true, true])
will give:false
- running:
(all [true, true, true, true])
will give:true
- running:
(all [])
will give:false
- running:
(all {})
will return nothing
join
function:
Join all the items in the list into a String. If list have non string items, it will return nuthing. If the second argument is ommited, the items will be seperated by comma.
Examples:
- running:
(join ["one", "two", "three"])
will give:"one, two, three"
- running:
(join ["one", "two", "three"], " ; ")
will give:"one ; two ; three"
- running:
(join ["one", "two", 3])
will return nothing
first
function:
The first item in a list.
Examples:
- running:
(first [1, 5, 1.1])
will give:1
- running:
(first [])
will return nothing
- running:
(first ["text"])
will give:"text"
- running:
(first "text")
will return nothing
last
function:
The last item in a list.
Examples:
- running:
(last [1, 5, 1.1])
will give:1.1
- running:
(last [])
will return nothing
- running:
(last ["text"])
will give:"text"
- running:
(last "text")
will return nothing
Function group object
Function group has those functions and groups:
- Group
object_to_list
- Convert an object into a list - Group
sort_objects
- Sort an object- Function
sort_by_keys
- Sort an object by it's keys. - Function
sort_by_values
- Sort an object by it's values. - Function
sort_by_values_by
- Sort an object by a function to it's values.
- Function
- Group
manipulate_object
- Manipulate objects to pruduce a new object- Function
put
- Add a new entry to a map. - Function
insert_if_absent
- Add a new entry to a map if it has no such key. - Function
replace_if_exists
- Add a new entry to a map if it has such key.
- Function
- Group
functional_object
- Functional function over an object- Function
filter_keys
- Filter an object by keys. - Function
filter_values
- Filter an object by values. - Function
map_values
- Map an object values. - Function
map_keys
- Map an object keys.
- Function
Use additional help with a function name to see more details about the function.
Function group object_to_list
Convert an object into a list Function group has those functions and groups:
- Function
keys
- Get the list of keys from an object. - Function
values
- Get the list of values from an object. - Function
entries
- Get the list of all the entries of an obejct. Each item of the list will be an object withkey
andvalue
entries
Use additional help with a function name to see more details about the function.
keys
function:
Get the list of keys from an object.
Examples:
- running:
(keys {"key-1": 1, "key-2": false})
will give:["key-1", "key-2"]
- running:
(keys [1, 2, 4])
will return nothing
values
function:
- Can also be called as
vals
Get the list of values from an object.
Examples:
- running:
(values {"key-1": 1, "key-2": false})
will give:[1, false]
- running:
(values [1, 2, 4])
will return nothing
entries
function:
- Can also be called as
to_list
Get the list of all the entries of an obejct. Each item of the list will be an object with key
and value
entries
Examples:
- running:
(entries {"key-1": 1, "key-2": false})
will give:[{"value": 1, "key": "key-1"}, {"value": false, "key": "key-2"}]
- running:
(entries [1, 2, 4])
will return nothing
Function group sort_objects
Sort an object Function group has those functions and groups:
- Function
sort_by_keys
- Sort an object by it's keys. - Function
sort_by_values
- Sort an object by it's values. - Function
sort_by_values_by
- Sort an object by a function to it's values.
Use additional help with a function name to see more details about the function.
sort_by_keys
function:
- Can also be called as
order_by_keys
Sort an object by it's keys. If the first argument is an object, return object sorted by it's keys.
Examples:
- running:
(sort_by_keys {"z": 1, "x": 2, "w": null})
will give:{"w": null, "x": 2, "z": 1}
- running:
(sort_by_keys false)
will return nothing
sort_by_values
function:
- Can also be called as
order_by_values
Sort an object by it's values. If the first argument is an object, return object sorted by it's values.
Examples:
- running:
(sort_by_values {"z": 5, "x": 2, "w": null})
will give:{"w": null, "x": 2, "z": 5}
- running:
(sort_by_values false)
will return nothing
sort_by_values_by
function:
- Can also be called as
order_by_values_by
Sort an object by a function to it's values. If the first argument is an object, return object sorted by applying the second argumetn to it's values.
Examples:
- running:
(sort_by_values_by {"a": [1, 2, 3], "b": [1], "c": [2], "d": [3], "e": [0, null, 0]}, (.len))
will give:{"b": [1], "c": [2], "d": [3], "a": [1, 2, 3], "e": [0, null, 0]}
- running:
(sort_by_values_by false, .)
will return nothing
Function group manipulate_object
Manipulate objects to pruduce a new object Function group has those functions and groups:
- Function
put
- Add a new entry to a map. - Function
insert_if_absent
- Add a new entry to a map if it has no such key. - Function
replace_if_exists
- Add a new entry to a map if it has such key.
Use additional help with a function name to see more details about the function.
put
function:
-
Can also be called as
insert
-
Can also be called as
replace
-
Can also be called as
{}
Add a new entry to a map. The first argument should be an object. The second argument should be a key. The third argument should be a value. If the object has that key, it will be replaced.
Examples:
- running:
(put {}, "a", 1)
will give:{"a": 1}
- running:
(put {"a": 10, "b": 22}, "a", -1)
will give:{"a": -1, "b": 22}
- running:
(put [], "a", 1)
will return nothing
- running:
(put {}, 1, 1)
will return nothing
- running:
(put {}, "1", ({} {} 1 1))
will return nothing
insert_if_absent
function:
-
Can also be called as
put_if_absent
-
Can also be called as
replace_if_absent
-
Can also be called as
{-}
Add a new entry to a map if it has no such key. The first argument should be an object. The second argument should be a key. The third argument should be a value. If the object has that key, it will not be replaced.
Examples:
- running:
(insert_if_absent {}, "a", 1)
will give:{"a": 1}
- running:
(insert_if_absent {"a": 10, "b": 22}, "a", -1)
will give:{"a": 10, "b": 22}
Because the object already has a value with thea
key.
- running:
(insert_if_absent [], "a", 1)
will return nothing
- running:
(insert_if_absent {}, 1, 1)
will return nothing
- running:
(insert_if_absent {}, "1", ({} {} 1 1))
will return nothing
replace_if_exists
function:
-
Can also be called as
insert_if_exists
-
Can also be called as
put_if_exists
-
Can also be called as
{+}
Add a new entry to a map if it has such key. The first argument should be an object. The second argument should be a key. The third argument should be a value. If the object dosen't has that key, it will not be replaced.
Examples:
- running:
(replace_if_exists {}, "a", 1)
will give:{}
Because The object has no value for keya
.
- running:
(replace_if_exists {"a": 10, "b": 22}, "a", -1)
will give:{"a": -1, "b": 22}
- running:
(replace_if_exists [], "a", 1)
will return nothing
- running:
(replace_if_exists {}, 1, 1)
will return nothing
- running:
(replace_if_exists {}, "1", ({} {} 1 1))
will return nothing
Function group functional_object
Functional function over an object Function group has those functions and groups:
- Function
filter_keys
- Filter an object by keys. - Function
filter_values
- Filter an object by values. - Function
map_values
- Map an object values. - Function
map_keys
- Map an object keys.
Use additional help with a function name to see more details about the function.
filter_keys
function:
Filter an object by keys. The first argument should be the object and the second should be a function to filter the keys by.
Examples:
- running:
(filter_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (>= (len .) 3))
will give:{"aaa": 3, "aaaa": 4}
Because it filters all the keys that are shorter than 3 characters.
- running:
(filter_keys [1, 2, 4], false)
will return nothing
filter_values
function:
Filter an object by values. The first argument should be the object and the second should be a function to filter the values by.
Examples:
- running:
(filter_values {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (= 0 (% . 2)))
will give:{"aa": 2, "aaaa": 4}
Because it filters all the odds values
- running:
(filter_values [1, 2, 4], false)
will return nothing
map_values
function:
Map an object values. The first argument should be the object and the second should be a function to map the values to.
Examples:
- running:
(map_values {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (% . 2))
will give:{"a": 1, "aa": 0, "aaa": 1, "aaaa": 0}
- running:
(map_values {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (+ . ^.))
for input:3
will give:{"a": 4, "aa": 5, "aaa": 6, "aaaa": 7}
Because it adds the input (3) to all the values.
- running:
(map_values [1, 2, 4], false)
will return nothing
map_keys
function:
Map an object keys. The first argument should be the object and the second should be a function to map the keys to.
Examples:
- running:
(map_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (concat "_" .))
will give:{"_a": 1, "_aa": 2, "_aaa": 3, "_aaaa": 4}
- running:
(map_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (concat ^. .))
for input:"prefix-"
will give:{"prefix-a": 1, "prefix-aa": 2, "prefix-aaa": 3, "prefix-aaaa": 4}
- running:
(map_keys {"a": 1, "aa": 2, "aaa": 3, "aaaa": 4}, (number? .))
will give:{}
- running:
(map_keys [1, 2, 4], false)
will return nothing
Function group number
Function group has those functions and groups:
- Function
+
- If all the arguments are number, add them. - Function
-
- If there are two numeric arguments, substract the second argument from the first one if both are number. - Function
*
- If all the arguments are number, multiply them. - Function
/
- Divide the firs argument by the second argument. If the second argument is 0 will return nothing - Function
%
- Find the reminder of the division of the firs argument by the second argument. If the second argument is 0 will return nothing - Function
abs
- If the argument is numeric, return it's absolute value. - Function
round
- If the argument is numeric, return it's rounded. - Function
ceil
- If the argument is numeric, return it's ceiling. - Function
floor
- If the argument is numeric, return it's floor.
Use additional help with a function name to see more details about the function.
+
function:
-
Can also be called as
add
-
Can also be called as
plus
If all the arguments are number, add them.
Examples:
- running:
(+ 1, 3)
will give:4
- running:
(+ 1, 10, -4.1, 0.1)
will give:7
- running:
(+ 1, 3, false)
will return nothing
-
function:
-
Can also be called as
minus
-
Can also be called as
take_away
-
Can also be called as
substruct
If there are two numeric arguments, substract the second argument from the first one if both are number. If there is one numeric arguments, return the negative of that number.
Examples:
- running:
(- 100, 3)
will give:97
- running:
(- 10, 3.2)
will give:6.8
- running:
(- 10)
will give:-10
- running:
(- -11.3)
will give:11.3
- running:
(- 10, "text")
will return nothing
- running:
(- null, 6)
will return nothing
- running:
(- {})
will return nothing
*
function:
-
Can also be called as
times
-
Can also be called as
multiple
If all the arguments are number, multiply them.
Examples:
- running:
(* 2, 3)
will give:6
- running:
(* 2, 15, 0.1)
will give:3
- running:
(* 2, true)
will return nothing
/
function:
- Can also be called as
divide
Divide the firs argument by the second argument. If the second argument is 0 will return nothing
Examples:
- running:
(/ 100, 25)
will give:4
- running:
(/ 7, 2)
will give:3.5
- running:
(/ 7, 0)
will return nothing
- running:
(/ 7, [])
will return nothing
- running:
(/ {}, 5)
will return nothing
%
function:
-
Can also be called as
mod
-
Can also be called as
modulu
-
Can also be called as
reminder
Find the reminder of the division of the firs argument by the second argument. If the second argument is 0 will return nothing
Examples:
- running:
(% 5, 3)
will give:2
- running:
(% 7, 2)
will give:1
- running:
(% 7, 0)
will return nothing Because Can not devide by zero.
- running:
(% 10, 7.5)
will give:2.5
- running:
(% 10, -7)
will give:3
- running:
(% -10, 7)
will give:-3
- running:
(% -10, -7)
will give:-3
- running:
(% 7, false)
will return nothing
- running:
(% [1], 4)
will return nothing
abs
function:
If the argument is numeric, return it's absolute value.
Examples:
- running:
(abs 100)
will give:100
- running:
(abs -100)
will give:100
- running:
(abs 0)
will give:0
- running:
(abs [0])
will return nothing
round
function:
If the argument is numeric, return it's rounded.
Examples:
- running:
(round 10.3)
will give:10
- running:
(round -10.3)
will give:-10
- running:
(round -10)
will give:-10
- running:
(round -10.5)
will give:-11
- running:
(round 10.5)
will give:11
- running:
(round [0])
will return nothing
ceil
function:
- Can also be called as
ceiling
If the argument is numeric, return it's ceiling.
Examples:
- running:
(ceil 10.3)
will give:11
- running:
(ceil -10.3)
will give:-10
- running:
(ceil -10)
will give:-10
- running:
(ceil -10.5)
will give:-10
- running:
(ceil 10.99)
will give:11
- running:
(ceil [0])
will return nothing
floor
function:
If the argument is numeric, return it's floor.
Examples:
- running:
(floor 10.3)
will give:10
- running:
(floor -10.3)
will give:-11
- running:
(floor -10)
will give:-10
- running:
(floor -10.5)
will give:-11
- running:
(floor 10.99)
will give:10
- running:
(floor [0])
will return nothing
Function group string
Function group has those functions and groups:
- Function
env
- Get enviornment variable. - Function
concat
- Concat all string arguments. - Function
head
- Extract a string header. - Function
tail
- Extract a string tail. - Function
split
- Split the string into array of strings. - Function
base63_decode
- Decode a BASE64 string and try to convert to a string using UTF8. - Group
parse_and_stringify
- Function to parse from a string or to convert an object into a string- Function
stringify
- Return the JSON represantation of the object. - Function
parse
- Parse a string into JSON value. - Function
parse_selection
- Parse a string into a new selection.
- Function
- Group
regex
- Regular expression functions- Function
match
- Return true if the first string argument match the second regular expression argument. - Function
extract_regex_group
- Return the capture group within the string.
- Function
Use additional help with a function name to see more details about the function.
env
function:
- Can also be called as
$
Get enviornment variable.
Examples:
- running:
(env "PATH")
can give something like:"\/snap\/bin:\/home\/runner\/.local\/bin:\/opt\/pipx_bin:\/home\/runner\/.cargo\/bin:\/home\/runner\/.config\/composer\/vendor\/bin:\/usr\/local\/.ghcup\/bin:\/home\/runner\/.dotnet\/tools:\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/usr\/games:\/usr\/local\/games:\/snap\/bin"
concat
function:
Concat all string arguments.
Examples:
- running:
(concat "one", " ", "two")
will give:"one two"
- running:
(concat "one", " ", 2)
will return nothing
head
function:
Extract a string header.
If the first argument is a string and the second argument is a positive integer, the returned value will be a string with the beggining of the first argument.
See also take
.
Examples:
- running:
(head "test-123", 4)
will give:"test"
- running:
(head "test-123", 20)
will give:"test-123"
- running:
(head 20, 20)
will return nothing
- running:
(head "20", -5)
will return nothing
tail
function:
Extract a string tail.
If the first argument is a string and the second argument is a positive integer, the returned value will be a string with the end of the first argument.
See also take_last
.
Examples:
- running:
(tail "test-123", 4)
will give:"-123"
- running:
(tail "test-123", 20)
will give:"test-123"
- running:
(tail 20, 20)
will return nothing
- running:
(tail "20", -5)
will return nothing
split
function:
Split the string into array of strings.
Examples:
- running:
(split "one, two, three", ", ")
will give:["one", "two", "three"]
- running:
(split "a|b|c", "|")
will give:["a", "b", "c"]
base63_decode
function:
- Can also be called as
base64
Decode a BASE64 string and try to convert to a string using UTF8. Retunr nothing if the first and only argument is not a valid UTF8 string encoded using BASE64.
Examples:
- running:
(base63_decode "dGVzdA==")
will give:"test"
- running:
(base63_decode "test")
will return nothing
- running:
(base63_decode "wyg=")
will return nothing
- running:
(base63_decode 100)
will return nothing
Function group parse_and_stringify
Function to parse from a string or to convert an object into a string Function group has those functions and groups:
- Function
stringify
- Return the JSON represantation of the object. - Function
parse
- Parse a string into JSON value. - Function
parse_selection
- Parse a string into a new selection.
Use additional help with a function name to see more details about the function.
stringify
function:
Return the JSON represantation of the object.
Examples:
- running:
(stringify true)
will give:"true"
- running:
(stringify 1e2)
will give:"100"
- running:
(stringify {"key": [1, 2, "3"]})
will give:"{\"key\": [1, 2, \"3\"]}"
- running:
(stringify (+ 10 20))
will give:"30"
parse
function:
- Can also be called as
parse_json
Parse a string into JSON value.
Examples:
- running:
(parse "[1, 2, 3, 4]")
will give:[1, 2, 3, 4]
- running:
(parse "312")
will give:312
- running:
(parse "{}")
will give:{}
- running:
(parse 400)
will return nothing
parse_selection
function:
Parse a string into a new selection.
Examples:
- running:
(parse_selection "(+ 10 11)")
will give:21
- running:
(parse_selection false)
will return nothing
Function group regex
Regular expression functions Function group has those functions and groups:
- Function
match
- Return true if the first string argument match the second regular expression argument. - Function
extract_regex_group
- Return the capture group within the string.
Use additional help with a function name to see more details about the function.
match
function:
- Can also be called as
match_regex
Return true if the first string argument match the second regular expression argument.
For regular expression syntax, see https://docs.rs/regex/latest/regex/#syntax.
Use --regular_expression_cache_size
so set a cache for compiled regular expressions.
Examples:
- running:
(match "test", "[a-z]+")
will give:true
- running:
(match "test", "[0-9]+")
will give:false
- running:
(match "test", "[0-9")
will return nothing
extract_regex_group
function:
Return the capture group within the string.
The first argument is expected to be the string to apply the expression on.
The second argument is expected to be the string with the regular expression.
The third argument is expected to be the group index with in the regular epression (the first group index is one).
For regular expression syntax, see https://docs.rs/regex/latest/regex/#syntax.
Use --regular_expression_cache_size
so set a cache for compiled regular expressions.
Examples:
- running:
(extract_regex_group "hello 200 world", "[a-z ]+([0-9]+)[a-z ]+", 1)
will give:"200"
Because the regular expression is letters and spaces, group with numbers, and more letter and spaces, so the group is the string"200"
.
- running:
(extract_regex_group "hello 200 world", "[a-z ]+([0-9]+)[a-z ]+", 20)
will return nothing
- running:
(extract_regex_group "hello 200 world", "[a-z ]+([0-9]+)[a-z ]+", 0)
will give:"hello 200 world"
- running:
(extract_regex_group "test", "[0-9", 10)
will return nothing
Function group boolean
Function group has those functions and groups:
- Group
compare
- Compatison functions- Function
=
- Compare two value and return true if both are equals. - Function
!=
- Compare two value and return true if both are not equals. - Function
<
- Compare two value and return true if the first is smaller than the second. - Function
<=
- Compare two value and return true if the first is smaller or eqauls than the second. - Function
>=
- Compare two value and return true if the first is greater or eqauls than the second. - Function
>
- Compare two value and return true if the first is greater than the second.
- Function
- Group
logical
- Logical function- Function
and
- Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument. - Function
or
- Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false. - Function
xor
- Return true if one, and only one, of the argument is true. - Function
not
- Return false if the argument is true and true if the argument is false.
- Function
Use additional help with a function name to see more details about the function.
Function group compare
Compatison functions Function group has those functions and groups:
- Function
=
- Compare two value and return true if both are equals. - Function
!=
- Compare two value and return true if both are not equals. - Function
<
- Compare two value and return true if the first is smaller than the second. - Function
<=
- Compare two value and return true if the first is smaller or eqauls than the second. - Function
>=
- Compare two value and return true if the first is greater or eqauls than the second. - Function
>
- Compare two value and return true if the first is greater than the second.
Use additional help with a function name to see more details about the function.
=
function:
Compare two value and return true if both are equals.
Examples:
- running:
(= 1, 3)
will give:false
- running:
(= 1, 1)
will give:true
- running:
(= "1", 1)
will give:false
- running:
(= "abc", "abc")
will give:true
!=
function:
- Can also be called as
<>
Compare two value and return true if both are not equals.
Examples:
- running:
(!= 1, 3)
will give:true
- running:
(!= 1, 1)
will give:false
- running:
(!= "1", 1)
will give:true
- running:
(!= "abc", "abc")
will give:false
<
function:
Compare two value and return true if the first is smaller than the second.
Examples:
- running:
(< 1, 3)
will give:true
- running:
(< 1, 1)
will give:false
- running:
(< 31, 1)
will give:false
<=
function:
Compare two value and return true if the first is smaller or eqauls than the second.
Examples:
- running:
(<= 1, 3)
will give:true
- running:
(<= 1, 1)
will give:true
- running:
(<= 31, 1)
will give:false
>=
function:
Compare two value and return true if the first is greater or eqauls than the second.
Examples:
- running:
(>= 1, 3)
will give:false
- running:
(>= 1, 1)
will give:true
- running:
(>= 31, 1)
will give:true
>
function:
Compare two value and return true if the first is greater than the second.
Examples:
- running:
(> 1, 3)
will give:false
- running:
(> 1, 1)
will give:false
- running:
(> 31, 1)
will give:true
Function group logical
Logical function Function group has those functions and groups:
- Function
and
- Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument. - Function
or
- Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false. - Function
xor
- Return true if one, and only one, of the argument is true. - Function
not
- Return false if the argument is true and true if the argument is false.
Use additional help with a function name to see more details about the function.
and
function:
- Can also be called as
&&
Return true if all the arguments are true, nothing if there is a non boolean argument and false if there is a false argument.
Examples:
- running:
(and true, true, true, true)
will give:true
- running:
(and true, true, false, true)
will give:false
- running:
(and true, true, 12, true)
will return nothing
or
function:
- Can also be called as
||
Return true if any of the arguments are true, nothing if there is a non boolean argument and false if all the arguments are false.
Examples:
- running:
(or true, true, true, true)
will give:true
- running:
(or false, false, false, true, true, false, true)
will give:true
- running:
(or false, false)
will give:false
- running:
(or 121, true, true)
will return nothing
xor
function:
- Can also be called as
^
Return true if one, and only one, of the argument is true.
Examples:
- running:
(xor true, true)
will give:false
- running:
(xor true, false)
will give:true
- running:
(xor false, true)
will give:true
- running:
(xor false, false)
will give:false
- running:
(xor null, false)
will return nothing
- running:
(xor true, 12)
will return nothing
not
function:
- Can also be called as
!
Return false if the argument is true and true if the argument is false.
Examples:
- running:
(not true)
will give:false
- running:
(not false)
will give:true
- running:
(not (string? 12))
will give:true
- running:
(not 12)
will return nothing
Function group time
Function group has those functions and groups:
- Function
now
- Return the current time as seconds since epoch. - Function
format_time
- Format a date/time into a string - Function
parse_time_with_zone
- Parse a date/time from a string into seconds since epoc. This version expect to get the time zone as well - Function
parse_time
- Parse a date/time from a string into seconds since epoc
Use additional help with a function name to see more details about the function.
now
function:
Return the current time as seconds since epoch.
Examples:
- running:
(now )
can give something like:1713010695.697608
format_time
function:
Format a date/time into a string The first argemnt should be the number of seconds since epoch The second argemnt should be the format as string See details in https://docs.rs/chrono/latest/chrono/format/strftime/index.html.
Examples:
- running:
(format_time 1701611515.3603675, 122)
will return nothing
- running:
(format_time {}, "%a %b %e %T %Y - %H:%M:%S%.f")
will return nothing
- running:
(format_time 1701611515.3603675, "%a %b %e %T %Y - %H:%M:%S%.f")
will give:"Sun Dec 3 13:51:55 2023 - 13:51:55.360367536"
parse_time_with_zone
function:
Parse a date/time from a string into seconds since epoc. This version expect to get the time zone as well The first argemnt should be the date The second argemnt should be the format as string See details in https://docs.rs/chrono/latest/chrono/format/strftime/index.html.
Examples:
- running:
(parse_time_with_zone "2023 Dec 3 13:51:55.360 +0500", "%Y %b %d %H:%M:%S%.3f %z")
will give:1701593515.36
- running:
(parse_time_with_zone " 3-Dec-2023 - 13:51:55.360", 122)
will return nothing
- running:
(parse_time_with_zone {}, "%v - %T%.3f")
will return nothing
parse_time
function:
Parse a date/time from a string into seconds since epoc The first argemnt should be the date The second argemnt should be the format as string See details in https://docs.rs/chrono/latest/chrono/format/strftime/index.html.
Examples:
- running:
(parse_time " 3-Dec-2023 - 13:51:55.360", "%v - %T%.3f")
will give:1701611515.36
- running:
(parse_time "2023 Dec 3 13:51:55.360 +0500", "%Y %b %d %H:%M:%S%.3f %z")
will give:1701611515.36
- running:
(parse_time " 3-Dec-2023 - 13:51:55.360", 122)
will return nothing
- running:
(parse_time {}, "%v - %T%.3f")
will return nothing
Function group variables
Function group has those functions and groups:
- Function
set
- Set a variable. The first argument should be the variable name, the second one should be the value and the third - Function
:
- Return the value of a named variable. See set for examples. - Function
define
- Define a new macro definition. The first argument should be the macro definition name, the second one should be macro and the third - Function
@
- Return the value of a named variable. See define for examples.
Use additional help with a function name to see more details about the function.
set
function:
Set a variable. The first argument should be the variable name, the second one should be the value and the third one should be the function to run with the variable.
Examples:
- running:
(set "foo", {"key": 100}, (get (: "foo") "key" ))
will give:100
- running:
(set "foo", {"key": 100}, (get :foo "key" ))
will give:100
- running:
(set 12, {"key": 100}, (get (: "foo") "key" ))
will return nothing
- running:
(set "foo", {"key": 100}, (get (: 12) "key" ))
will return nothing
:
function:
- Can also be called as
get_variable
Return the value of a named variable. See set for examples.
Examples:
- running:
(: "foo")
will return nothing
define
function:
-
Can also be called as
macro
-
Can also be called as
def
-
Can also be called as
#
Define a new macro definition. The first argument should be the macro definition name, the second one should be macro and the third one should be the function to run with the macro.
Examples:
- running:
(define "add-1", (.+ 1), (map [1, 2, 3] (@ "add-1")))
will give:[2, 3, 4]
- running:
(define "add-1", (.+ 1), (map [1, 2, 3] @add-1))
will give:[2, 3, 4]
- running:
(define "three", 3, (+ 1 @three))
will give:4
- running:
(define 12, {"key": 100}, (get (: "foo") "key" ))
will return nothing
@
function:
Return the value of a named variable. See define for examples.
Examples:
- running:
(@ "foo")
will return nothing
Function group proccess
Function group has those functions and groups:
- Function
exec
- Execute an external proccess and wait for it's completion. - Function
trigger
- Trigger an external proccess and return it's process ID.
Use additional help with a function name to see more details about the function.
exec
function:
- Can also be called as
execute
Execute an external proccess and wait for it's completion. If all the arguments are strings run a process with that list. The result is an object with:
success
Boolean to indicate if the process was successfull.exit_code
The process exit code.raw_stdout
The standart output of the process encode as BASE64.stdout
The standart output as text.raw_stderr
The standart error of the process encode as BASE64.stderr
The standart error as text.
Examples:
- running:
(exec "echo", "hello", "world")
will give:{"success": true, "exit_code": 0, "raw_stdout": "aGVsbG8gd29ybGQK", "stdout": "hello world\n", "raw_stderr": "", "stderr": ""}
- running:
(exec "cat", "no such file")
will give:{"success": false, "exit_code": 1, "raw_stdout": "", "stdout": "", "raw_stderr": "Y2F0OiAnbm8gc3VjaCBmaWxlJzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQo=", "stderr": "cat: 'no such file': No such file or directory\n"}
- running:
(exec "no such exec")
will return nothing
- running:
(exec 23)
will return nothing Because 23 is not a string
- running:
(exec "echo", 23)
will return nothing Because 23 is not a string
trigger
function:
Trigger an external proccess and return it's process ID. If all the arguments are strings run a process with that list. The result is the process ID:
Examples:
- running:
(trigger "echo", "hello", "world")
will give:4371
- running:
(trigger "no such exec")
will return nothing
- running:
(trigger 23)
will return nothing Because 23 is not a string
- running:
(trigger "echo", 23)
will return nothing Because 23 is not a string
Function group nas
NAS - Number As String, i.e. number that represent as string, like "12" instead of 12. Can be used for big numbers and acurate calculates. Function group has those functions and groups:
- Group
nas_arithmetic
- Number As String arithmetic functions.- Function
"||"
- If the argument is string as number, return it in a normelize form (to allow a constent uniquness check). - Function
"+"
- If all the arguments are numbers as string number, add them. - Function
"-"
- If there are two numeric arguments, substract the second argument from the first one if both are number. - Function
"*"
- If all the arguments are numbers as string, multiply them. - Function
"/"
- Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing - Function
"%"
- Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing - Function
"abs"
- If the argument is numnber as string, return it's absolute value as string. - Function
"round"
- If the argument is string as number, return it's rounded.
- Function
- Group
nas_compare
- Number As String comparison functions.- Function
"="
- Compare two string as numbers and return true if both are equals. - Function
"!="
- Compare two number as strings and return true if both are not equals. - Function
">"
- Compare two numbers as string and return true if the first is greater than the second. - Function
"<"
- Compare two numbers as string and return true if the first is smaller than the second. - Function
">="
- Compare two numbers and string and return true if the first is greater or eqauls than the second. - Function
"<="
- Compare two numbers and string and return true if the first is smaller or eqauls than the second. - Function
"sort_by"
- Sort a list using number as strings.
- Function
Use additional help with a function name to see more details about the function.
Function group nas_arithmetic
Number As String arithmetic functions. Function group has those functions and groups:
- Function
"||"
- If the argument is string as number, return it in a normelize form (to allow a constent uniquness check). - Function
"+"
- If all the arguments are numbers as string number, add them. - Function
"-"
- If there are two numeric arguments, substract the second argument from the first one if both are number. - Function
"*"
- If all the arguments are numbers as string, multiply them. - Function
"/"
- Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing - Function
"%"
- Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing - Function
"abs"
- If the argument is numnber as string, return it's absolute value as string. - Function
"round"
- If the argument is string as number, return it's rounded.
Use additional help with a function name to see more details about the function.
"||"
function:
- Can also be called as
nas_normelize
If the argument is string as number, return it in a normelize form (to allow a constent uniquness check).
Examples:
- running:
("||" "1000000")
will give:"1E+6"
- running:
("||" "0.00000000005")
will give:"5E-11"
- running:
("||" "000000000005")
will give:"5"
- running:
("||" "00000000000.5")
will give:"0.5"
- running:
("||" "100e100")
will give:"1E+102"
- running:
("||" 10)
will return nothing
"+"
function:
-
Can also be called as
nas_add
-
Can also be called as
nas_plus
If all the arguments are numbers as string number, add them.
Examples:
- running:
("+" "1", "3")
will give:"4"
- running:
("+" "1", "10", "-4.1", "0.1")
will give:"7"
- running:
("+" "1e999", "1e999", "4e999")
will give:"6E+999"
- running:
("+" "1", "3", "text")
will return nothing
- running:
("+" "1", "3", [])
will return nothing
"-"
function:
-
Can also be called as
nas_minus
-
Can also be called as
nas_take_away
-
Can also be called as
nas_substruct
If there are two numeric arguments, substract the second argument from the first one if both are number. If there is one numeric arguments, return the negative of that number.
Examples:
- running:
("-" "100", "3")
will give:"97"
- running:
("-" "10", "3.2")
will give:"6.8"
- running:
("-" "10")
will give:"-1E+1"
- running:
("-" "-11.3")
will give:"11.3"
- running:
("-" "10", "text")
will return nothing
- running:
("-" null, "6")
will return nothing
- running:
("-" {})
will return nothing
"*"
function:
-
Can also be called as
nas_times
-
Can also be called as
nas_multiple
If all the arguments are numbers as string, multiply them.
Examples:
- running:
("*" "2", "3")
will give:"6"
- running:
("*" "2", "15", "0.1")
will give:"3"
- running:
("*" "1e100", "1e80", "1e300")
will give:"1E+480"
- running:
("*" "2", true)
will return nothing
"/"
function:
- Can also be called as
nas_divide
Divide the firs argument by the second argument if both are strings as numbers. If the second argument is "0" will return nothing
Examples:
- running:
("/" "100", "25")
will give:"4"
- running:
("/" "7", "2")
will give:"3.5"
- running:
("/" "1e900", "5e899")
will give:"2"
- running:
("/" "7", [])
will return nothing
- running:
("/" {}, "5")
will return nothing
- running:
("/" "7", "0")
will return nothing
"%"
function:
-
Can also be called as
nas_mod
-
Can also be called as
nas_modulu
-
Can also be called as
nas_remider
Find the reminder of the division of the firs argument by the second argument if both are strings as number. If the second argument is "0" will return nothing
Examples:
- running:
("%" "5", "3")
will give:"2"
- running:
("%" "7", "2")
will give:"1"
- running:
("%" "7", "0")
will return nothing Because Can not devide by zero.
- running:
("%" "10", "7.5")
will give:"2.5"
- running:
("%" "10", "-7")
will give:"3"
- running:
("%" "-10", "7")
will give:"-3"
- running:
("%" "-10", "-7")
will give:"-3"
- running:
("%" "7", false)
will return nothing
- running:
("%" [1], "4")
will return nothing
"abs"
function:
- Can also be called as
nas_abs
If the argument is numnber as string, return it's absolute value as string.
Examples:
- running:
("abs" "100")
will give:"1E+2"
- running:
("abs" "-100")
will give:"1E+2"
- running:
("abs" "100e500")
will give:"1E+502"
- running:
("abs" 0)
will return nothing
- running:
("abs" "test")
will return nothing
"round"
function:
- Can also be called as
nas_round
If the argument is string as number, return it's rounded.
Examples:
- running:
("round" "10.3")
will give:"1E+1"
- running:
("round" "-10.3")
will give:"-1E+1"
- running:
("round" "-10")
will give:"-1E+1"
- running:
("round" "-10.5")
will give:"-1E+1"
- running:
("round" "10.5")
will give:"1E+1"
- running:
("round" 10)
will return nothing
Function group nas_compare
Number As String comparison functions. Function group has those functions and groups:
- Function
"="
- Compare two string as numbers and return true if both are equals. - Function
"!="
- Compare two number as strings and return true if both are not equals. - Function
">"
- Compare two numbers as string and return true if the first is greater than the second. - Function
"<"
- Compare two numbers as string and return true if the first is smaller than the second. - Function
">="
- Compare two numbers and string and return true if the first is greater or eqauls than the second. - Function
"<="
- Compare two numbers and string and return true if the first is smaller or eqauls than the second. - Function
"sort_by"
- Sort a list using number as strings.
Use additional help with a function name to see more details about the function.
"="
function:
Compare two string as numbers and return true if both are equals.
Examples:
- running:
("=" "1", "3")
will give:false
- running:
("=" "100000000", "1E+8")
will give:true
- running:
("=" "1", 1)
will return nothing
- running:
("=" 1, "1")
will return nothing
"!="
function:
- Can also be called as
"<>"
Compare two number as strings and return true if both are not equals.
Examples:
- running:
("!=" "1E400", "3E400")
will give:true
- running:
("!=" "1E99", "1E99")
will give:false
- running:
("!=" "1", 1)
will return nothing
- running:
("!=" 1, "1")
will return nothing
">"
function:
Compare two numbers as string and return true if the first is greater than the second.
Examples:
- running:
(">" "1", "3")
will give:false
- running:
(">" "1", "1")
will give:false
- running:
(">" "1E+400", "1E+395")
will give:true
- running:
(">" "1E+400", 1)
will return nothing
- running:
(">" 1, "1E+400")
will return nothing
"<"
function:
Compare two numbers as string and return true if the first is smaller than the second.
Examples:
- running:
("<" "1", "3")
will give:true
- running:
("<" "1", "1")
will give:false
- running:
("<" "31", "1")
will give:false
- running:
("<" 31, "1")
will return nothing
- running:
("<" "1", 31)
will return nothing
">="
function:
Compare two numbers and string and return true if the first is greater or eqauls than the second.
Examples:
- running:
(">=" "1", "3")
will give:false
- running:
(">=" "1", "1")
will give:true
- running:
(">=" "1E300", "1E200")
will give:true
- running:
(">=" 30, "1E200")
will return nothing
- running:
(">=" "1E200", 30)
will return nothing
"<="
function:
Compare two numbers and string and return true if the first is smaller or eqauls than the second.
Examples:
- running:
("<=" "8E250", "3E300")
will give:true
- running:
("<=" "1", "1")
will give:true
- running:
("<=" "31", "1")
will give:false
- running:
("<=" "31", 1)
will return nothing
- running:
("<=" 1, "31")
will return nothing
"sort_by"
function:
-
Can also be called as
"order_by"
-
Can also be called as
sort_by_nas
-
Can also be called as
order_by_nas
Sort a list using number as strings. If the first argument is a list, return list sorted by the second argument, asuming it's a number as string.
Examples:
- running:
("sort_by" [ {"key": 0}, {"key": 1, "value": "1"}, {"key": 2, "value": "1E-100"}, {"key": 3, "value": "-1"}, {"key": 4, "value": "1E+100"}, {"key": 5, "value": "9999"}, {"key": 6, "value": "1000"}, {"key": 7, "value": "1.334E2"}, {"key": 8, "value": "1"} ], .value)
will give:[{"key": 0}, {"key": 3, "value": "-1"}, {"key": 2, "value": "1E-100"}, {"key": 1, "value": "1"}, {"key": 8, "value": "1"}, {"key": 7, "value": "1.334E2"}, {"key": 6, "value": "1000"}, {"key": 5, "value": "9999"}, {"key": 4, "value": "1E+100"}]
Because it sort the elements by their value as numbers.
- running:
("sort_by" true, (len .))
will return nothing
Examples
There are a few basic example on usage of jawk
. For more examples, see here.
Remove non JSON values
In this example we will see how to remove non json values.
If your input looks like
{=
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
test
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{?
}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
hello
123
You can use jawk
like:
jawk
To produce:
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
123
Create CSV file with some selected fields
In this example we will see how to create csv file with some selected fields.
If your input looks like
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}
You can use jawk
like:
jawk \
--select '.name.first=First Name' \
--select '.name.last=Last Name' \
--output-style csv
To produce:
"First Name", "Last Name"
"Fredrikke", "Furseth"
"Angela", "Álvarez"
"Tyra", "Smedstad"
"Isabella", "Mackay"
"Phoebe", "Lawson"
"Timeo", "Dubois"
"Teresa", "Soto"
"Adalberto", "Tapia"
"Yolanda", "Vela"
"پارمیس", "حیدری"
"Gordon", "Boller"
"Silvija", "Jevremović"
"Josephine", "Blanchard"
"Klaus-Peter", "Koopmann"
"Margrit", "Sanchez"
"Fabio", "Berden"
"Nuria", "Castro"
"Vildan", "Keçeci"
"Estelle", "Fournier"
"Lucy", "Cruz"
Filter values
In this example we will see how to filter values.
If your input looks like
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}
You can use jawk
like:
jawk \
--select '.name.first = First name' \
--select '.name.last = Last name' \
--select '.dob.age=Age' \
--where '(&& (> .dob.age 30) (< .dob.age 45))' \
--output-style csv
To produce:
"First name", "Last name", "Age"
"Tyra", "Smedstad", 39
"Isabella", "Mackay", 34
"Phoebe", "Lawson", 41
"Adalberto", "Tapia", 36
"Josephine", "Blanchard", 36
"Margrit", "Sanchez", 42
Group values
In this example we will see how to group values.
If your input looks like
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}
You can use jawk
like:
jawk \
--select '.name.first = First name' \
--select '.name.last = Last name' \
--select '(format_time (parse_time_with_zone .dob.date "%+") "%d %B %Y")=Birthday' \
--group-by '(format_time (parse_time_with_zone .dob.date "%+") "%Y")' \
--output-style json \
--style pretty
To produce:
{
"1954": [
{
"First name": "Fredrikke",
"Last name": "Furseth",
"Birthday": "23 August 1954"
},
{
"First name": "Yolanda",
"Last name": "Vela",
"Birthday": "06 August 1954"
}
],
"1976": [
{
"First name": "Angela",
"Last name": "\u00c1lvarez",
"Birthday": "09 June 1976"
}
],
"1984": [
{
"First name": "Tyra",
"Last name": "Smedstad",
"Birthday": "10 August 1984"
}
],
"1989": [
{
"First name": "Isabella",
"Last name": "Mackay",
"Birthday": "25 March 1989"
}
],
"1982": [
{
"First name": "Phoebe",
"Last name": "Lawson",
"Birthday": "19 September 1982"
}
],
"1994": [
{
"First name": "Timeo",
"Last name": "Dubois",
"Birthday": "30 April 1994"
}
],
"1956": [
{
"First name": "Teresa",
"Last name": "Soto",
"Birthday": "02 December 1956"
}
],
"1987": [
{
"First name": "Adalberto",
"Last name": "Tapia",
"Birthday": "26 October 1987"
},
{
"First name": "Josephine",
"Last name": "Blanchard",
"Birthday": "17 March 1987"
}
],
"1972": [
{
"First name": "\u067e\u0627\u0631\u0645\u06cc\u0633",
"Last name": "\u062d\u06cc\u062f\u0631\u06cc",
"Birthday": "09 June 1972"
},
{
"First name": "Gordon",
"Last name": "Boller",
"Birthday": "11 September 1972"
}
],
"1965": [
{
"First name": "Silvija",
"Last name": "Jevremovi\u0107",
"Birthday": "08 March 1965"
},
{
"First name": "Fabio",
"Last name": "Berden",
"Birthday": "23 October 1965"
}
],
"1947": [
{
"First name": "Klaus-Peter",
"Last name": "Koopmann",
"Birthday": "11 January 1947"
}
],
"1981": [
{
"First name": "Margrit",
"Last name": "Sanchez",
"Birthday": "16 July 1981"
}
],
"1962": [
{
"First name": "Nuria",
"Last name": "Castro",
"Birthday": "08 February 1962"
}
],
"1993": [
{
"First name": "Vildan",
"Last name": "Ke\u00e7eci",
"Birthday": "31 December 1993"
}
],
"1955": [
{
"First name": "Estelle",
"Last name": "Fournier",
"Birthday": "20 October 1955"
}
],
"1951": [
{
"First name": "Lucy",
"Last name": "Cruz",
"Birthday": "05 August 1951"
}
]
}
Sort values
In this example we will see how to sort values.
If your input looks like
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}
You can use jawk
like:
jawk \
--select '.name.first = First name' \
--select '.name.last = Last name' \
--select '.dob.age = Age' \
--sort-by '.dob.age DESC' \
--sort-by .name.last \
--output-style csv
To produce:
"First name", "Last name", "Age"
"Klaus-Peter", "Koopmann", 76
"Lucy", "Cruz", 72
"Fredrikke", "Furseth", 69
"Yolanda", "Vela", 69
"Estelle", "Fournier", 68
"Teresa", "Soto", 67
"Nuria", "Castro", 61
"Fabio", "Berden", 58
"Silvija", "Jevremović", 58
"Gordon", "Boller", 51
"پارمیس", "حیدری", 51
"Angela", "Álvarez", 47
"Margrit", "Sanchez", 42
"Phoebe", "Lawson", 41
"Tyra", "Smedstad", 39
"Josephine", "Blanchard", 36
"Adalberto", "Tapia", 36
"Isabella", "Mackay", 34
"Timeo", "Dubois", 29
"Vildan", "Keçeci", 29
Remove duplications
In this example we will see how to remove duplications.
If your input looks like
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}
You can use jawk
like:
jawk \
--select '.nat = Nationality' \
--sort-by .nat \
--unique \
--output-style csv
To produce:
"Nationality"
"CA"
"CH"
"DE"
"ES"
"FR"
"GB"
"IE"
"IR"
"MX"
"NL"
"NO"
"RS"
"TR"
"US"
Using macros as functions
In this example we will see how to using macros as functions.
If your input looks like
{"gender": "female", "name": {"title": "Miss", "first": "Fredrikke", "last": "Furseth"}, "location": {"street": {"number": 9975, "name": "Balchens gate"}, "city": "Fjellsrud", "state": "M\u00f8re og Romsdal", "country": "Norway", "postcode": "8270", "coordinates": {"latitude": "46.6152", "longitude": "59.8624"}, "timezone": {"offset": "-2:00", "description": "Mid-Atlantic"}}, "email": "fredrikke.furseth@example.com", "login": {"uuid": "5306f026-ea91-4f96-9ab0-8229252fc871", "username": "angryleopard250", "password": "rated", "salt": "NKh0JAuO", "md5": "45a26eaa0c8fc9861b29c2211c1636f2", "sha1": "5a5527b43338a219b95a2346dc8c244286b6aa9a", "sha256": "446795d9f362f9120c0ae9523cdfdfb1e5f61c8c8bd89d01a56a9443a48facfb"}, "dob": {"date": "1954-08-23T16:43:10.251Z", "age": 69}, "registered": {"date": "2013-08-21T11:49:36.862Z", "age": 10}, "phone": "31985401", "cell": "94426914", "id": {"name": "FN", "value": "23085412825"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/13.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/13.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/13.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Angela", "last": "\u00c1lvarez"}, "location": {"street": {"number": 8355, "name": "Avenida del Planetario"}, "city": "La Palma", "state": "Asturias", "country": "Spain", "postcode": 81328, "coordinates": {"latitude": "-66.5496", "longitude": "173.4816"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "angela.alvarez@example.com", "login": {"uuid": "663bf27a-be49-410e-ad36-2c6fe3bd1610", "username": "angrybutterfly198", "password": "avalanch", "salt": "x05nT1hy", "md5": "70cf6a63245104a088534e47c8c32913", "sha1": "9e9429b6e476b91c3c6c3c8beab8fd4e020c54e7", "sha256": "fb0ac7e1bdcd099de48bb943deb1c8265b071aab01d101999fd6d47cda5ce964"}, "dob": {"date": "1976-06-09T13:50:15.295Z", "age": 47}, "registered": {"date": "2007-07-30T05:55:20.320Z", "age": 16}, "phone": "906-769-799", "cell": "665-054-011", "id": {"name": "DNI", "value": "10772136-H"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/22.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/22.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/22.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Mrs", "first": "Tyra", "last": "Smedstad"}, "location": {"street": {"number": 2784, "name": "Fr\u00f8yas gate"}, "city": "Gata", "state": "Oppland", "country": "Norway", "postcode": "7873", "coordinates": {"latitude": "-71.4445", "longitude": "-140.5351"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "tyra.smedstad@example.com", "login": {"uuid": "8431abbf-cfeb-4818-a121-31cc425a4bef", "username": "beautifulpanda450", "password": "clock", "salt": "tDRoW2LQ", "md5": "40631b2513bd882411393d9dea3af918", "sha1": "f465fe539d4207f65835c7bca92403f962eacb2c", "sha256": "345eb98f85c395a57921656d65f9dc4682aebcfe6636e528e619ce72b8d1516e"}, "dob": {"date": "1984-08-10T19:34:41.505Z", "age": 39}, "registered": {"date": "2012-01-14T14:01:04.612Z", "age": 11}, "phone": "55399992", "cell": "94741076", "id": {"name": "FN", "value": "10088419486"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/78.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/78.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/78.jpg"}, "nat": "NO"}
{"gender": "female", "name": {"title": "Ms", "first": "Isabella", "last": "Mackay"}, "location": {"street": {"number": 811, "name": "9th St"}, "city": "Inverness", "state": "Prince Edward Island", "country": "Canada", "postcode": "X0B 3S7", "coordinates": {"latitude": "50.2028", "longitude": "-36.3905"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "isabella.mackay@example.com", "login": {"uuid": "f4338957-b3cd-49a3-9b6b-7d695ffff3a6", "username": "organicdog306", "password": "finder", "salt": "wNA1dNtD", "md5": "41394bad944f1a38ae7d99b152d668a2", "sha1": "5a397bc12f2a8b9a919b6c11c5b3af34e0399a26", "sha256": "3e58331e19da7b7d091b3284b21d9a8882aa6431ea8192df38e4d00384b1b008"}, "dob": {"date": "1989-03-25T03:57:37.855Z", "age": 34}, "registered": {"date": "2019-12-09T14:34:52.560Z", "age": 4}, "phone": "K24 Q56-4317", "cell": "H43 P90-4248", "id": {"name": "SIN", "value": "601246507"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/37.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/37.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/37.jpg"}, "nat": "CA"}
{"gender": "female", "name": {"title": "Miss", "first": "Phoebe", "last": "Lawson"}, "location": {"street": {"number": 6088, "name": "Stanley Road"}, "city": "Newcastle upon Tyne", "state": "Bedfordshire", "country": "United Kingdom", "postcode": "KK55 0SG", "coordinates": {"latitude": "43.8753", "longitude": "-12.3481"}, "timezone": {"offset": "+10:00", "description": "Eastern Australia, Guam, Vladivostok"}}, "email": "phoebe.lawson@example.com", "login": {"uuid": "21ba9d1a-89c4-4117-b15a-6d0a575923ce", "username": "blackwolf672", "password": "1972", "salt": "GDQogQCY", "md5": "01dfc713aa53fb127d46bdc7befedc13", "sha1": "2d618d08b2cb585300b86881c5b8fe0622c3f311", "sha256": "d6a5bf3a971bdea2ec3ef6357a6da100eb20931670538633695061115109e8a3"}, "dob": {"date": "1982-09-19T14:13:41.640Z", "age": 41}, "registered": {"date": "2008-09-14T06:23:56.507Z", "age": 15}, "phone": "016977 0286", "cell": "07356 649337", "id": {"name": "NINO", "value": "HT 50 56 21 E"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/1.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/1.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/1.jpg"}, "nat": "GB"}
{"gender": "male", "name": {"title": "Mr", "first": "Timeo", "last": "Dubois"}, "location": {"street": {"number": 641, "name": "Rue Duquesne"}, "city": "Le Mans", "state": "H\u00e9rault", "country": "France", "postcode": 29604, "coordinates": {"latitude": "-20.3780", "longitude": "-39.1876"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "timeo.dubois@example.com", "login": {"uuid": "37a99762-b475-49f0-a47d-d7dde3abe42e", "username": "heavyduck382", "password": "death1", "salt": "azZtceGC", "md5": "9f514a2ab55698b558514baad3e83e9b", "sha1": "77b134d925c0743d5c00fce613e2131c0862d30f", "sha256": "3ae0fd5fecf0cbfe44cd9e9bc7f842885cd952ba321fea57060709f45b03fdbd"}, "dob": {"date": "1994-04-30T04:02:25.917Z", "age": 29}, "registered": {"date": "2003-11-03T00:29:57.888Z", "age": 20}, "phone": "04-23-26-34-99", "cell": "06-23-19-78-72", "id": {"name": "INSEE", "value": "1940355952529 29"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/44.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/44.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/44.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Miss", "first": "Teresa", "last": "Soto"}, "location": {"street": {"number": 2962, "name": "Green Lane"}, "city": "Rush", "state": "Cork City", "country": "Ireland", "postcode": 43064, "coordinates": {"latitude": "-66.9461", "longitude": "94.9504"}, "timezone": {"offset": "-12:00", "description": "Eniwetok, Kwajalein"}}, "email": "teresa.soto@example.com", "login": {"uuid": "3b3192e8-8c1a-4b92-aa9b-ac0ca43f6c5a", "username": "beautifulsnake498", "password": "thor", "salt": "Yl3cj0BU", "md5": "c2856e2e41aa0167870aca7b765f2438", "sha1": "3c82e8c53b916f89f8fc71451a99a80aa5bade29", "sha256": "9233d57206dad83294ad8d4f260a697c3b7d2effc61b07f4f47167109d244208"}, "dob": {"date": "1956-12-02T15:49:12.183Z", "age": 67}, "registered": {"date": "2010-01-13T09:38:53.238Z", "age": 13}, "phone": "041-895-6753", "cell": "081-927-6366", "id": {"name": "PPS", "value": "3476278T"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/39.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/39.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/39.jpg"}, "nat": "IE"}
{"gender": "male", "name": {"title": "Mr", "first": "Adalberto", "last": "Tapia"}, "location": {"street": {"number": 7643, "name": "Pasaje Quer\u00e9taro"}, "city": "Tequesquitl\u00e1n", "state": "Veracruz", "country": "Mexico", "postcode": 19392, "coordinates": {"latitude": "11.1359", "longitude": "14.4986"}, "timezone": {"offset": "-4:00", "description": "Atlantic Time (Canada), Caracas, La Paz"}}, "email": "adalberto.tapia@example.com", "login": {"uuid": "cd7268cb-0137-4a90-be10-5bc7ac80f9c8", "username": "yellowleopard669", "password": "carpet", "salt": "cYZqQqoR", "md5": "3c508daf3fb63ec6ab7e8267677789cd", "sha1": "29b5562a2e1c57564a511fe7b8ab31c6d46d9770", "sha256": "0a50edaf32ac09be3b5b385a7fe46cd12a8511d889f075725740fc4431c76125"}, "dob": {"date": "1987-10-26T20:21:42.260Z", "age": 36}, "registered": {"date": "2002-06-06T16:11:31.428Z", "age": 21}, "phone": "(636) 179 4319", "cell": "(620) 953 6065", "id": {"name": "NSS", "value": "58 72 21 6051 4"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/24.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/24.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/24.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Mrs", "first": "Yolanda", "last": "Vela"}, "location": {"street": {"number": 4235, "name": "Circunvalaci\u00f3n Norte Ontiveros"}, "city": "Santa Elena (Francisco Zarco)", "state": "Zacatecas", "country": "Mexico", "postcode": 19311, "coordinates": {"latitude": "-86.2815", "longitude": "-56.8200"}, "timezone": {"offset": "+1:00", "description": "Brussels, Copenhagen, Madrid, Paris"}}, "email": "yolanda.vela@example.com", "login": {"uuid": "87b31a7d-02fa-4a50-a1a5-bd04cfed84dc", "username": "silverlion570", "password": "pointer", "salt": "FAIfhUkJ", "md5": "de4fdd1563141be4260e4bfb7d1e0934", "sha1": "37fc20366cec7a35ad2b8a34692112562aa5038a", "sha256": "90294aa678e54f47d3854ec7f45663943a39f8b13d003865179fd8793a06afa2"}, "dob": {"date": "1954-08-06T04:27:10.482Z", "age": 69}, "registered": {"date": "2015-03-14T09:44:06.448Z", "age": 8}, "phone": "(691) 324 7123", "cell": "(697) 831 1314", "id": {"name": "NSS", "value": "27 66 22 7575 0"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/73.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/73.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/73.jpg"}, "nat": "MX"}
{"gender": "female", "name": {"title": "Miss", "first": "\u067e\u0627\u0631\u0645\u06cc\u0633", "last": "\u062d\u06cc\u062f\u0631\u06cc"}, "location": {"street": {"number": 9683, "name": "\u0645\u06cc\u062f\u0627\u0646 \u0634\u0645\u0634\u06cc\u0631\u06cc"}, "city": "\u0642\u0627\u0626\u0645\u200c\u0634\u0647\u0631", "state": "\u0627\u0631\u062f\u0628\u06cc\u0644", "country": "Iran", "postcode": 15785, "coordinates": {"latitude": "-28.5413", "longitude": "-55.7982"}, "timezone": {"offset": "+4:00", "description": "Abu Dhabi, Muscat, Baku, Tbilisi"}}, "email": "prmys.hydry@example.com", "login": {"uuid": "7478b071-39b3-443e-9321-386aee5abfdc", "username": "crazywolf415", "password": "wildcard", "salt": "cPF8bhqW", "md5": "b7224d92917116ea2bfda6b779c2a888", "sha1": "c3ebee3d2983acc86a6f0f0d83640d28d3966a3c", "sha256": "762751b82fe8708e42876cc5e1c9411ef7f820ffd337afb400c22fc6b0cf46d3"}, "dob": {"date": "1972-06-09T00:59:53.966Z", "age": 51}, "registered": {"date": "2016-05-31T13:19:02.232Z", "age": 7}, "phone": "023-36980589", "cell": "0914-858-9022", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/33.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/33.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/33.jpg"}, "nat": "IR"}
{"gender": "male", "name": {"title": "Mr", "first": "Gordon", "last": "Boller"}, "location": {"street": {"number": 8049, "name": "Tannenweg"}, "city": "Petershagen", "state": "Th\u00fcringen", "country": "Germany", "postcode": 47252, "coordinates": {"latitude": "-42.8514", "longitude": "160.5128"}, "timezone": {"offset": "-3:00", "description": "Brazil, Buenos Aires, Georgetown"}}, "email": "gordon.boller@example.com", "login": {"uuid": "a1455a69-b033-4398-9f10-b14da6240107", "username": "beautifulbutterfly315", "password": "marvin", "salt": "bDwIxU0E", "md5": "1f570d5973d860a10e8a3b121153348c", "sha1": "9f95df3a63512c9d9ef26cd76a37cc78a3a00e0c", "sha256": "3d887130990cdb96baefb88260d085f9755aabf89f912d81238b708a0c47b27c"}, "dob": {"date": "1972-09-11T10:13:54.296Z", "age": 51}, "registered": {"date": "2021-03-23T13:53:23.684Z", "age": 2}, "phone": "0306-8436446", "cell": "0179-0387220", "id": {"name": "SVNR", "value": "70 110972 B 280"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/10.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/10.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/10.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mrs", "first": "Silvija", "last": "Jevremovi\u0107"}, "location": {"street": {"number": 7578, "name": "Kneza Palalije"}, "city": "Zve\u010dan", "state": "Rasina", "country": "Serbia", "postcode": 83539, "coordinates": {"latitude": "85.9791", "longitude": "44.8104"}, "timezone": {"offset": "+11:00", "description": "Magadan, Solomon Islands, New Caledonia"}}, "email": "silvija.jevremovic@example.com", "login": {"uuid": "52f11af1-3a3f-4a9a-abb2-49bed0a599a6", "username": "sadelephant446", "password": "madness", "salt": "PMTZhdZP", "md5": "ec41873a6304102df36f6c995584b52a", "sha1": "985e48062b108e1088b95d74689a23e905b72853", "sha256": "3892f6dbee70471dbd21dead4076a3ef8d5583349630f7b76712809d040e68f3"}, "dob": {"date": "1965-03-08T20:08:57.497Z", "age": 58}, "registered": {"date": "2004-02-07T04:43:54.506Z", "age": 19}, "phone": "032-7888-458", "cell": "062-3160-899", "id": {"name": "SID", "value": "355414676"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/70.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/70.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/70.jpg"}, "nat": "RS"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Josephine", "last": "Blanchard"}, "location": {"street": {"number": 1362, "name": "Avenue Goerges Cl\u00e9menceau"}, "city": "Gisikon", "state": "Graub\u00fcnden", "country": "Switzerland", "postcode": 5472, "coordinates": {"latitude": "72.2107", "longitude": "-52.6990"}, "timezone": {"offset": "+3:00", "description": "Baghdad, Riyadh, Moscow, St. Petersburg"}}, "email": "josephine.blanchard@example.com", "login": {"uuid": "6b5b3145-f924-4e65-9305-66890a41c582", "username": "greenostrich767", "password": "serenity", "salt": "6fG2jx31", "md5": "2c96796ea5caec55d88feb2404b57345", "sha1": "36bc76ea90bab3fb8f2ce2078a53e02dca259bcb", "sha256": "425de57999ed3eee7bbe73c2a63759349df6e9a6844a0c45930e5931f783225c"}, "dob": {"date": "1987-03-17T03:09:53.399Z", "age": 36}, "registered": {"date": "2008-03-22T15:36:29.315Z", "age": 15}, "phone": "075 881 90 80", "cell": "075 220 90 42", "id": {"name": "AVS", "value": "756.1304.6729.13"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/69.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/69.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/69.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Klaus-Peter", "last": "Koopmann"}, "location": {"street": {"number": 1666, "name": "Fliederweg"}, "city": "Bad Breisig", "state": "Brandenburg", "country": "Germany", "postcode": 98467, "coordinates": {"latitude": "29.5464", "longitude": "-176.7671"}, "timezone": {"offset": "+8:00", "description": "Beijing, Perth, Singapore, Hong Kong"}}, "email": "klaus-peter.koopmann@example.com", "login": {"uuid": "5874f794-b909-4a31-a63e-3d1e67306d50", "username": "greenbutterfly873", "password": "1qaz2wsx", "salt": "9s8rf1wp", "md5": "5f0a035bf8cf2bb04a40558e050f66a9", "sha1": "fa792636fab99c12f01a50f2f2e7e49a4163be31", "sha256": "d9b7543536745b0f350e2e2b307dcdd7982560f45491ddf6376aa8cc7bee0046"}, "dob": {"date": "1947-01-11T16:27:22.136Z", "age": 76}, "registered": {"date": "2012-10-12T13:52:51.428Z", "age": 11}, "phone": "0397-8016035", "cell": "0171-6169370", "id": {"name": "SVNR", "value": "26 110147 K 481"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/42.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/42.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/42.jpg"}, "nat": "DE"}
{"gender": "female", "name": {"title": "Mademoiselle", "first": "Margrit", "last": "Sanchez"}, "location": {"street": {"number": 3656, "name": "Rue de L'Abb\u00e9-Roger-Derry"}, "city": "M\u00e4nnedorf", "state": "Neuch\u00e2tel", "country": "Switzerland", "postcode": 9084, "coordinates": {"latitude": "-78.2618", "longitude": "8.2599"}, "timezone": {"offset": "+6:00", "description": "Almaty, Dhaka, Colombo"}}, "email": "margrit.sanchez@example.com", "login": {"uuid": "74735e17-9364-4a56-af45-1fbec388e838", "username": "greenbutterfly897", "password": "throat", "salt": "DVrPIJAH", "md5": "d837977d8a8da07ec7e4c9e3fc87d012", "sha1": "7325bb30a9921828c6caa88cacd2ff1a9e332a30", "sha256": "1ff87666699c1efbd12f6ac1e5774b03e8ffa427fbc1bfa90db0253b8eb985f4"}, "dob": {"date": "1981-07-16T08:23:18.063Z", "age": 42}, "registered": {"date": "2003-07-23T17:44:35.902Z", "age": 20}, "phone": "078 295 70 38", "cell": "079 826 99 10", "id": {"name": "AVS", "value": "756.7360.9969.72"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/87.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/87.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/87.jpg"}, "nat": "CH"}
{"gender": "male", "name": {"title": "Mr", "first": "Fabio", "last": "Berden"}, "location": {"street": {"number": 1670, "name": "Kuppersweg"}, "city": "Geersdijk", "state": "Flevoland", "country": "Netherlands", "postcode": "4752 EK", "coordinates": {"latitude": "-51.2995", "longitude": "166.2318"}, "timezone": {"offset": "+5:30", "description": "Bombay, Calcutta, Madras, New Delhi"}}, "email": "fabio.berden@example.com", "login": {"uuid": "7cfd3044-d25c-43d0-af6b-e1d73667de8a", "username": "blackbear880", "password": "charlotte", "salt": "E5rwRznF", "md5": "ba3cb10d7412b20aebd036dfb0cc3cf5", "sha1": "93d3a46f1c54dc39f9d5735a4a1c2b3186925ea6", "sha256": "bd22abc4798b1eff04d9168dba5eb021d6427eeabad846506148b7463d205e2b"}, "dob": {"date": "1965-10-23T10:14:32.717Z", "age": 58}, "registered": {"date": "2003-02-25T05:58:56.678Z", "age": 20}, "phone": "(082) 7277281", "cell": "(06) 55254073", "id": {"name": "BSN", "value": "23564900"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/men\/72.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/men\/72.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/men\/72.jpg"}, "nat": "NL"}
{"gender": "female", "name": {"title": "Miss", "first": "Nuria", "last": "Castro"}, "location": {"street": {"number": 5282, "name": "Calle de Ferraz"}, "city": "Torrej\u00f3n de Ardoz", "state": "Andaluc\u00eda", "country": "Spain", "postcode": 37767, "coordinates": {"latitude": "43.8560", "longitude": "14.7635"}, "timezone": {"offset": "-10:00", "description": "Hawaii"}}, "email": "nuria.castro@example.com", "login": {"uuid": "5f4ba5aa-56b9-43cd-a00d-4caee10dd4a4", "username": "purplezebra152", "password": "bruins", "salt": "Pi3t6GZr", "md5": "5947c672fe6c76a6e0b5200cfc138552", "sha1": "4e24b9b79123486b39e8f22b944f710edc55794d", "sha256": "3c31e598f81d268eee1aed4865239405d780b8cb39d926a23d6a219d9caac3a1"}, "dob": {"date": "1962-02-08T13:52:48.490Z", "age": 61}, "registered": {"date": "2009-03-29T08:26:01.351Z", "age": 14}, "phone": "916-406-577", "cell": "660-465-465", "id": {"name": "DNI", "value": "76499924-Y"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/32.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/32.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/32.jpg"}, "nat": "ES"}
{"gender": "female", "name": {"title": "Miss", "first": "Vildan", "last": "Ke\u00e7eci"}, "location": {"street": {"number": 9205, "name": "Anafartalar Cd"}, "city": "Kayseri", "state": "Hakk\u00e2ri", "country": "Turkey", "postcode": 81969, "coordinates": {"latitude": "-46.5612", "longitude": "72.3140"}, "timezone": {"offset": "-5:00", "description": "Eastern Time (US & Canada), Bogota, Lima"}}, "email": "vildan.kececi@example.com", "login": {"uuid": "3f8ac036-92bf-4751-b40e-85a0a99db442", "username": "blackkoala424", "password": "jazzman", "salt": "tyGQ4eeC", "md5": "ff42dc5d8acc6943426e95c22d55e3b1", "sha1": "c2d78a0151fbb0510f694d9746b362f51219dbe3", "sha256": "5d9e0a871bff32164cbac725667823716aae06214a3b2152f9709be0895a2f05"}, "dob": {"date": "1993-12-31T05:09:07.248Z", "age": 29}, "registered": {"date": "2006-09-16T11:22:47.710Z", "age": 17}, "phone": "(810)-384-4129", "cell": "(334)-315-1134", "id": {"name": "", "value": null}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/40.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/40.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/40.jpg"}, "nat": "TR"}
{"gender": "female", "name": {"title": "Miss", "first": "Estelle", "last": "Fournier"}, "location": {"street": {"number": 6943, "name": "Rue du Village"}, "city": "Lille", "state": "Guadeloupe", "country": "France", "postcode": 69236, "coordinates": {"latitude": "18.5340", "longitude": "-167.6684"}, "timezone": {"offset": "+9:30", "description": "Adelaide, Darwin"}}, "email": "estelle.fournier@example.com", "login": {"uuid": "82798fe7-766c-4f18-a811-c29bc882ace2", "username": "yellowleopard981", "password": "queenie", "salt": "u1CrF1ty", "md5": "ecef44528e525545c6bbc0fc5aef19dc", "sha1": "e24efb4dcaf76e2da48afd4e19ab2da9b696272b", "sha256": "c536fc296d51befa7e4071a47a84dd5d109a0c2ac4b6bd5d00fd62e9f0cd7a5e"}, "dob": {"date": "1955-10-20T22:04:12.919Z", "age": 68}, "registered": {"date": "2010-04-29T18:24:11.009Z", "age": 13}, "phone": "03-31-09-24-73", "cell": "06-29-61-45-93", "id": {"name": "INSEE", "value": "2550991537258 58"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/91.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/91.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/91.jpg"}, "nat": "FR"}
{"gender": "female", "name": {"title": "Mrs", "first": "Lucy", "last": "Cruz"}, "location": {"street": {"number": 7477, "name": "Hamilton Ave"}, "city": "Milwaukee", "state": "Delaware", "country": "United States", "postcode": 43570, "coordinates": {"latitude": "-30.9476", "longitude": "-88.9587"}, "timezone": {"offset": "+2:00", "description": "Kaliningrad, South Africa"}}, "email": "lucy.cruz@example.com", "login": {"uuid": "7c145ebd-4226-4173-ba93-3c8c919bd219", "username": "yellowladybug766", "password": "proxy", "salt": "FBNNudA4", "md5": "973785a35911960c3071b2dd77d43dfd", "sha1": "a9b0177c64d92dccac7a8788c990e8b025de31f2", "sha256": "8d9e23e8a9f6f17d04a95a72a1c224f0a30248a3b0dab658c8c6225611a6c8b6"}, "dob": {"date": "1951-08-05T18:31:29.220Z", "age": 72}, "registered": {"date": "2012-11-17T23:26:37.180Z", "age": 11}, "phone": "(743) 507-6493", "cell": "(288) 637-4718", "id": {"name": "SSN", "value": "112-75-7255"}, "picture": {"large": "https:\/\/randomuser.me\/api\/portraits\/women\/8.jpg", "medium": "https:\/\/randomuser.me\/api\/portraits\/med\/women\/8.jpg", "thumbnail": "https:\/\/randomuser.me\/api\/portraits\/thumb\/women\/8.jpg"}, "nat": "US"}
You can use jawk
like:
jawk \
--select '(concat .name.first " " .name.last) = Name' \
--select '(| .dob @day-of-the-week)=Day of birth' \
--select '(| .registered @day-of-the-week)=Day of registration' \
--select '(| .registered @time-of-day)=Registration at' \
--select '(| .dob @time-of-day)=Born at' \
--set '@day-of-the-week=(format_time (parse_time_with_zone (.get "date") "%+") "%A")' \
--set 'before="Before Noon"' \
--set 'after="After Noon"' \
--set '@time-of-day=(? (> (parse (extract_regex_group (.get "date") "[0-9-]+T([0-9]+):.+" 1)) 12) :before :after)' \
--output-style csv \
--sort-by .name.last
To produce:
"Name", "Day of birth", "Day of registration", "Registration at", "Born at"
"Fabio Berden", "Saturday", "Tuesday", "After Noon", "After Noon"
"Josephine Blanchard", "Tuesday", "Saturday", "Before Noon", "After Noon"
"Gordon Boller", "Monday", "Tuesday", "Before Noon", "After Noon"
"Nuria Castro", "Thursday", "Sunday", "After Noon", "Before Noon"
"Lucy Cruz", "Sunday", "Saturday", "Before Noon", "Before Noon"
"Timeo Dubois", "Saturday", "Monday", "After Noon", "After Noon"
"Estelle Fournier", "Thursday", "Thursday", "Before Noon", "Before Noon"
"Fredrikke Furseth", "Monday", "Wednesday", "After Noon", "Before Noon"
"Silvija Jevremović", "Monday", "Saturday", "After Noon", "Before Noon"
"Vildan Keçeci", "Friday", "Saturday", "After Noon", "After Noon"
"Klaus-Peter Koopmann", "Saturday", "Friday", "Before Noon", "Before Noon"
"Phoebe Lawson", "Sunday", "Sunday", "After Noon", "Before Noon"
"Isabella Mackay", "Saturday", "Monday", "Before Noon", "After Noon"
"Margrit Sanchez", "Thursday", "Wednesday", "Before Noon", "After Noon"
"Tyra Smedstad", "Friday", "Saturday", "Before Noon", "Before Noon"
"Teresa Soto", "Sunday", "Wednesday", "After Noon", "Before Noon"
"Adalberto Tapia", "Monday", "Thursday", "Before Noon", "Before Noon"
"Yolanda Vela", "Friday", "Saturday", "After Noon", "After Noon"
"Angela Álvarez", "Wednesday", "Monday", "After Noon", "Before Noon"
"پارمیس حیدری", "Friday", "Tuesday", "Before Noon", "After Noon"
Split values into rows
In this example we will see how to split values into rows.
If your input looks like
{"results":[{"gender":"female","name":{"title":"Miss","first":"Peppi","last":"Toro"},"location":{"street":{"number":6562,"name":"Siilitie"},"city":"Keminmaa","state":"Kymenlaakso","country":"Finland","postcode":15959,"coordinates":{"latitude":"-25.8117","longitude":"25.7781"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"peppi.toro@example.com","login":{"uuid":"be3aad43-1112-47be-ac2d-388d837bc7ef","username":"ticklishduck577","password":"beau","salt":"ffjBU5NW","md5":"5f6640bbfafae5214650b075f10d172f","sha1":"9ea9d42b836f165d42e8fb8bf7c5c57a3eb05f0b","sha256":"53a51b6814eea431ff0d09d0ffb0c38050d55d196ec46f5ba1cbcf206fa78888"},"dob":{"date":"1974-11-18T02:21:12.768Z","age":49},"registered":{"date":"2019-07-22T10:35:33.126Z","age":4},"phone":"03-478-499","cell":"048-737-68-94","id":{"name":"HETU","value":"NaNNA772undefined"},"picture":{"large":"https://randomuser.me/api/portraits/women/52.jpg","medium":"https://randomuser.me/api/portraits/med/women/52.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/52.jpg"},"nat":"FI"},{"gender":"female","name":{"title":"Miss","first":"Nuray","last":"Ewert"},"location":{"street":{"number":5231,"name":"Kirchweg"},"city":"Neu-Anspach","state":"Schleswig-Holstein","country":"Germany","postcode":77066,"coordinates":{"latitude":"54.9963","longitude":"107.3057"},"timezone":{"offset":"-3:00","description":"Brazil, Buenos Aires, Georgetown"}},"email":"nuray.ewert@example.com","login":{"uuid":"5cadf6cc-53ec-4225-889e-b5fb1cedfe89","username":"orangemeercat549","password":"topgun","salt":"u8TeW310","md5":"af4e640986a36622390e3bbcd14f12da","sha1":"b0d9bb333f3589e75e2a095254c4e6640c47a6c0","sha256":"f05274ef793f58dc157a8a29ea41de6a1be3b863149c9131a22ba2d89bbae696"},"dob":{"date":"1965-12-29T17:54:56.374Z","age":58},"registered":{"date":"2009-11-24T21:02:41.670Z","age":14},"phone":"0200-3782398","cell":"0177-4093048","id":{"name":"SVNR","value":"76 291265 E 770"},"picture":{"large":"https://randomuser.me/api/portraits/women/69.jpg","medium":"https://randomuser.me/api/portraits/med/women/69.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/69.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Miss","first":"Caroline","last":"Caldwell"},"location":{"street":{"number":4954,"name":"Sunset St"},"city":"Geelong","state":"New South Wales","country":"Australia","postcode":7778,"coordinates":{"latitude":"-0.0249","longitude":"-44.6147"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"caroline.caldwell@example.com","login":{"uuid":"6b3005cc-36fd-4c61-a617-de800d21207c","username":"tinyfish773","password":"puck","salt":"jhEBfkWQ","md5":"5deeb9b7ca1c1ee04bd2bf78a4d21964","sha1":"b07e65be294c54b901a52eddcf4d8b6f871b0a22","sha256":"0e46891b3431d41cb4d866c034e578b651b759f688aea8f5c7d185540df37047"},"dob":{"date":"1962-03-19T02:56:41.858Z","age":61},"registered":{"date":"2020-05-15T07:40:57.632Z","age":3},"phone":"09-5770-6743","cell":"0484-994-166","id":{"name":"TFN","value":"513712465"},"picture":{"large":"https://randomuser.me/api/portraits/women/12.jpg","medium":"https://randomuser.me/api/portraits/med/women/12.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/12.jpg"},"nat":"AU"},{"gender":"female","name":{"title":"Miss","first":"Freja","last":"Mortensen"},"location":{"street":{"number":8993,"name":"Adelgade"},"city":"Ølstykke","state":"Nordjylland","country":"Denmark","postcode":16524,"coordinates":{"latitude":"-21.5746","longitude":"-91.7624"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"freja.mortensen@example.com","login":{"uuid":"1217612c-abe4-4b4e-af9c-c0ac66e7ff72","username":"brownfish352","password":"oceans","salt":"CYfXkT3Y","md5":"3661adb5a1ff32ce0630e3522c1aa773","sha1":"506e92efd9038744a2697258d92540aa2bf51dd6","sha256":"99b9d458db638404942263556f4c9d72497cf6521a114cff1ef68241a18df43a"},"dob":{"date":"1960-06-14T23:48:11.306Z","age":63},"registered":{"date":"2018-11-18T03:34:20.450Z","age":5},"phone":"73640349","cell":"33351024","id":{"name":"CPR","value":"140660-7877"},"picture":{"large":"https://randomuser.me/api/portraits/women/44.jpg","medium":"https://randomuser.me/api/portraits/med/women/44.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/44.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Kenzo","last":"Morin"},"location":{"street":{"number":9190,"name":"Rue Duguesclin"},"city":"Saint-Étienne","state":"Haute-Marne","country":"France","postcode":67500,"coordinates":{"latitude":"18.2644","longitude":"55.1577"},"timezone":{"offset":"-3:30","description":"Newfoundland"}},"email":"kenzo.morin@example.com","login":{"uuid":"815b136a-8c4d-4582-9e0f-817c1c2beda3","username":"bigmouse458","password":"richards","salt":"9gm2Bl1q","md5":"51fdff46096555422007e571ecc29c2e","sha1":"80c2e0ae7510bfaf92a18da80d51324e45a3137d","sha256":"17358e0d490f436547948eeedc24fd499cd07bcb584f0314863fbd13c74c41da"},"dob":{"date":"1965-05-23T12:25:09.223Z","age":58},"registered":{"date":"2003-12-28T04:06:10.495Z","age":20},"phone":"02-18-80-60-72","cell":"06-22-04-51-86","id":{"name":"INSEE","value":"1650453513291 87"},"picture":{"large":"https://randomuser.me/api/portraits/men/95.jpg","medium":"https://randomuser.me/api/portraits/med/men/95.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/95.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Eino","last":"Jokinen"},"location":{"street":{"number":7764,"name":"Mechelininkatu"},"city":"Kaustinen","state":"Pirkanmaa","country":"Finland","postcode":80523,"coordinates":{"latitude":"-38.1302","longitude":"-79.0322"},"timezone":{"offset":"-1:00","description":"Azores, Cape Verde Islands"}},"email":"eino.jokinen@example.com","login":{"uuid":"4d7b5b60-57f6-4548-a046-bdbb656b5edd","username":"blueladybug328","password":"iforgot","salt":"VwF2p98Q","md5":"46af4003d21b37f6dcddf953c27c7d71","sha1":"93a1f5464344cff8a0229d37b99fe1da7d05ffd3","sha256":"9d00409a27236a8084a838938d43e7c1c0a03d19e2667360624ee5dae1da02ac"},"dob":{"date":"1949-05-08T14:44:31.912Z","age":74},"registered":{"date":"2015-06-24T08:19:29.242Z","age":8},"phone":"03-724-984","cell":"049-066-10-38","id":{"name":"HETU","value":"NaNNA859undefined"},"picture":{"large":"https://randomuser.me/api/portraits/men/87.jpg","medium":"https://randomuser.me/api/portraits/med/men/87.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/87.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Morris","last":"Gillissen"},"location":{"street":{"number":6702,"name":"Hoekliedenstraat"},"city":"Driehuizen","state":"Noord-Holland","country":"Netherlands","postcode":"9347 TJ","coordinates":{"latitude":"-18.4787","longitude":"50.0011"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"morris.gillissen@example.com","login":{"uuid":"f13d73d4-c196-451f-82ed-090b4440683d","username":"goldenbear350","password":"club","salt":"q1IBKnEe","md5":"b8ead0178bd9dee880e6a125aeeac41e","sha1":"82adea8b502b162999783a0246a7a7ad26ae8e04","sha256":"4a574bc9736d5ab86c09d9d1379ccead3a3b8a7661c76c3f9cefff2bc1b9bbac"},"dob":{"date":"1976-06-29T03:44:09.043Z","age":47},"registered":{"date":"2011-10-18T19:00:15.358Z","age":12},"phone":"(013) 0827250","cell":"(06) 53255605","id":{"name":"BSN","value":"42997202"},"picture":{"large":"https://randomuser.me/api/portraits/men/52.jpg","medium":"https://randomuser.me/api/portraits/med/men/52.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/52.jpg"},"nat":"NL"},{"gender":"male","name":{"title":"Mr","first":"Yan","last":"Mihalchenko"},"location":{"street":{"number":3577,"name":"Dubrovicka"},"city":"Arciz","state":"Ternopilska","country":"Ukraine","postcode":72982,"coordinates":{"latitude":"25.0388","longitude":"11.7355"},"timezone":{"offset":"+7:00","description":"Bangkok, Hanoi, Jakarta"}},"email":"yan.mihalchenko@example.com","login":{"uuid":"48253e25-4336-4c64-8cc5-8d3ffa73741a","username":"silvermeercat354","password":"dancing","salt":"zdpVc9eG","md5":"049c7af39ecda31acae915a06256b181","sha1":"b998c1dd614f514d4af7133d10b18e8f18068143","sha256":"f85124d912520a399e8bd5b7028d1dfa18c224dd0c05beaa232ad2747feee4d4"},"dob":{"date":"1999-03-18T22:12:24.110Z","age":24},"registered":{"date":"2014-01-25T20:48:15.571Z","age":9},"phone":"(099) I07-8254","cell":"(097) A88-3820","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/91.jpg","medium":"https://randomuser.me/api/portraits/med/men/91.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/91.jpg"},"nat":"UA"},{"gender":"male","name":{"title":"Mr","first":"Albert","last":"Jensen"},"location":{"street":{"number":3870,"name":"Nørrevænget"},"city":"Støvring ","state":"Syddanmark","country":"Denmark","postcode":67779,"coordinates":{"latitude":"67.3700","longitude":"-134.1782"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"albert.jensen@example.com","login":{"uuid":"b47fd6e0-9a21-45ed-9db1-a34ab3a84d97","username":"crazylion763","password":"tight","salt":"j14Owt44","md5":"e5bd2ac8137bb6c630f2a547ce2c192b","sha1":"dbc0c28ddf86dda8609ba8ee16f526ffc8eead3c","sha256":"d0146420601959eb308e82a93904ed204c86fa1bb969f65c0568a5f4b5204aac"},"dob":{"date":"1981-08-11T09:27:47.089Z","age":42},"registered":{"date":"2017-07-26T22:03:02.125Z","age":6},"phone":"90353116","cell":"06343374","id":{"name":"CPR","value":"110881-5682"},"picture":{"large":"https://randomuser.me/api/portraits/men/22.jpg","medium":"https://randomuser.me/api/portraits/med/men/22.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/22.jpg"},"nat":"DK"},{"gender":"female","name":{"title":"Miss","first":"Héloïse","last":"Dufour"},"location":{"street":{"number":284,"name":"Rue de L'Église"},"city":"Poitiers","state":"Ariège","country":"France","postcode":21664,"coordinates":{"latitude":"16.9482","longitude":"-104.0626"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"heloise.dufour@example.com","login":{"uuid":"71350487-8261-4d3c-b90c-748fd4552963","username":"redfrog645","password":"hudson","salt":"zpTY159W","md5":"6be6da3619ed24c318188c8c773d2e4a","sha1":"acaaf3d934b8c0c9c440ba8a308e010c44027e05","sha256":"0c22791c15bdcb1cc6e1ad9de17e420f9fa4e24143957f25871013db9219b60d"},"dob":{"date":"1963-12-27T04:30:04.570Z","age":60},"registered":{"date":"2015-08-10T18:24:37.345Z","age":8},"phone":"03-88-40-75-15","cell":"06-52-72-99-47","id":{"name":"INSEE","value":"2631139129895 95"},"picture":{"large":"https://randomuser.me/api/portraits/women/65.jpg","medium":"https://randomuser.me/api/portraits/med/women/65.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/65.jpg"},"nat":"FR"},{"gender":"female","name":{"title":"Ms","first":"Hailey","last":"Harcourt"},"location":{"street":{"number":5680,"name":"9th St"},"city":"Sandy Lake","state":"British Columbia","country":"Canada","postcode":"W7P 5K9","coordinates":{"latitude":"12.9278","longitude":"20.3588"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"hailey.harcourt@example.com","login":{"uuid":"a0973ffb-403e-457c-b5e1-f9d550cb604c","username":"whitemeercat408","password":"fick","salt":"Ru0zxTR6","md5":"fa4691711e9ee4205bb152bc736c2b85","sha1":"ffc7b4282d536c3b21ead7effbfc799464a72848","sha256":"513c19ade321b47af432767e8094bff31c4995577cfc6e541ff29ac611581cc9"},"dob":{"date":"1981-12-05T03:03:35.357Z","age":42},"registered":{"date":"2015-08-06T22:33:34.223Z","age":8},"phone":"W50 W76-4293","cell":"F07 R46-2401","id":{"name":"SIN","value":"491750329"},"picture":{"large":"https://randomuser.me/api/portraits/women/88.jpg","medium":"https://randomuser.me/api/portraits/med/women/88.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/88.jpg"},"nat":"CA"},{"gender":"female","name":{"title":"Mrs","first":"Celia","last":"Rodríguez"},"location":{"street":{"number":3555,"name":"Paseo de Zorrilla"},"city":"Torrejón de Ardoz","state":"Extremadura","country":"Spain","postcode":54659,"coordinates":{"latitude":"-83.5755","longitude":"172.4233"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"celia.rodriguez@example.com","login":{"uuid":"184c94f9-ef50-4cd3-9790-cc5d31350326","username":"ticklishpanda542","password":"redfox","salt":"qzGt8r1x","md5":"5360ec0b9160f8450968674ebc43ace5","sha1":"2231f49bab3a06165b2c233f52da37f6777133f9","sha256":"a9191c3cb0f0ba3ea2e66f8e7028fca5df33f4b3c487292f0ececce7a8e8efb8"},"dob":{"date":"1977-07-01T12:41:50.742Z","age":46},"registered":{"date":"2014-07-28T15:03:12.780Z","age":9},"phone":"903-800-910","cell":"671-824-978","id":{"name":"DNI","value":"57952513-Q"},"picture":{"large":"https://randomuser.me/api/portraits/women/70.jpg","medium":"https://randomuser.me/api/portraits/med/women/70.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/70.jpg"},"nat":"ES"},{"gender":"female","name":{"title":"Miss","first":"Dragica","last":"Tomić"},"location":{"street":{"number":7704,"name":"Svetislava Milića"},"city":"Sremska Mitrovica","state":"Pirot","country":"Serbia","postcode":73789,"coordinates":{"latitude":"17.4351","longitude":"120.2232"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"dragica.tomic@example.com","login":{"uuid":"ea2dea55-eee4-49ba-83e0-69413a0a5656","username":"angrykoala426","password":"727272","salt":"mgDlcJEh","md5":"fcc085b54ed690d52e173760a62eda8f","sha1":"f7c4235274ae48546f3f87361eb27ceeb3894f1b","sha256":"9d3e9b6f66cfc9e197c99dd727f1d504a27d34fd355270f9e5640e2b8f209b8f"},"dob":{"date":"1967-12-25T13:06:46.079Z","age":56},"registered":{"date":"2017-07-02T13:37:05.707Z","age":6},"phone":"034-9827-533","cell":"066-5685-691","id":{"name":"SID","value":"746575113"},"picture":{"large":"https://randomuser.me/api/portraits/women/35.jpg","medium":"https://randomuser.me/api/portraits/med/women/35.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/35.jpg"},"nat":"RS"},{"gender":"female","name":{"title":"Miss","first":"Pallavi","last":"Kumar"},"location":{"street":{"number":501,"name":"Dadabhai Naoroji Rd"},"city":"Bongaigaon","state":"Tripura","country":"India","postcode":57799,"coordinates":{"latitude":"50.8506","longitude":"-15.0604"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"pallavi.kumar@example.com","login":{"uuid":"8ad46e63-2f09-4b12-a3bc-defc7a595aa7","username":"tinyduck313","password":"modena","salt":"C014gvlV","md5":"1b3420ec8eea5552a1a17fdee0040417","sha1":"718ad895a3b4a9e0a4196baacb4d95ae8808e25e","sha256":"070aa55ee2872ee476f3d93501309f0d2148be17b44a82ec4f9e56f8234e06e3"},"dob":{"date":"1988-03-28T23:09:55.872Z","age":35},"registered":{"date":"2004-04-24T18:32:30.388Z","age":19},"phone":"9253647945","cell":"8054975159","id":{"name":"UIDAI","value":"272164555863"},"picture":{"large":"https://randomuser.me/api/portraits/women/32.jpg","medium":"https://randomuser.me/api/portraits/med/women/32.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/32.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Madame","first":"Medina","last":"Vincent"},"location":{"street":{"number":7323,"name":"Rue du Bât-D'Argent"},"city":"Courchapoix","state":"Uri","country":"Switzerland","postcode":4135,"coordinates":{"latitude":"68.2636","longitude":"122.5884"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"medina.vincent@example.com","login":{"uuid":"61b93984-b4ff-47b5-b23e-de82876d291b","username":"greenwolf479","password":"triumph","salt":"7fkIjuBd","md5":"7b87003c94dd7f6fd84fbcb1f42d6eb9","sha1":"5d181e708b42bdf11c57f18db0bc9b10fe33663b","sha256":"99ee8040b13633eb2acffb7b1c94b6e3dca2c5da31539dd9cd3e0dd49a6eec75"},"dob":{"date":"1965-07-16T11:15:47.851Z","age":58},"registered":{"date":"2004-08-15T02:21:30.545Z","age":19},"phone":"079 063 10 91","cell":"077 452 36 13","id":{"name":"AVS","value":"756.0457.4464.88"},"picture":{"large":"https://randomuser.me/api/portraits/women/13.jpg","medium":"https://randomuser.me/api/portraits/med/women/13.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/13.jpg"},"nat":"CH"},{"gender":"male","name":{"title":"Mr","first":"Emre","last":"Bolatlı"},"location":{"street":{"number":7998,"name":"Şehitler Cd"},"city":"Iğdır","state":"Van","country":"Turkey","postcode":17008,"coordinates":{"latitude":"-75.3799","longitude":"36.3751"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"emre.bolatli@example.com","login":{"uuid":"b5f66bbe-5f95-4aae-980d-ba74e630ca6a","username":"silverfish212","password":"manman","salt":"zVTPqktY","md5":"25bffe0438baf60d199e9eec5554fba5","sha1":"f0e480a64c23636000e51d843446a876960ab9a6","sha256":"40a9593d20c03e06c4c531e12a0677e079650bdcf8a47d0b758ab4b2a48d6a07"},"dob":{"date":"1964-11-29T08:07:47.414Z","age":59},"registered":{"date":"2019-05-03T14:09:17.757Z","age":4},"phone":"(174)-502-7201","cell":"(007)-236-2310","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/86.jpg","medium":"https://randomuser.me/api/portraits/med/men/86.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/86.jpg"},"nat":"TR"},{"gender":"female","name":{"title":"Miss","first":"Gabrielle","last":"Li"},"location":{"street":{"number":3207,"name":"Grand Ave"},"city":"Field","state":"British Columbia","country":"Canada","postcode":"J8R 3F0","coordinates":{"latitude":"-37.9756","longitude":"-22.7547"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"gabrielle.li@example.com","login":{"uuid":"12149739-dda3-4f3c-bdcb-d6615c5036fb","username":"crazyfish688","password":"earth","salt":"F5WyVUrd","md5":"89b0cd320561f28498af17d9e44b1289","sha1":"368f5cfa1b89a1376a56195eb72b70eab1bfd49e","sha256":"d2d2dfb121f813c9b5b3c398a503ca5bf7462a170c536bac3daa6f1ee2a79a68"},"dob":{"date":"1971-02-13T19:48:32.051Z","age":52},"registered":{"date":"2010-12-20T00:08:02.912Z","age":13},"phone":"N04 W78-0036","cell":"I41 L93-5043","id":{"name":"SIN","value":"003867603"},"picture":{"large":"https://randomuser.me/api/portraits/women/84.jpg","medium":"https://randomuser.me/api/portraits/med/women/84.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/84.jpg"},"nat":"CA"},{"gender":"male","name":{"title":"Mr","first":"Rich","last":"Meehan"},"location":{"street":{"number":7695,"name":"Alexander Road"},"city":"Athy","state":"Laois","country":"Ireland","postcode":97231,"coordinates":{"latitude":"44.1976","longitude":"-67.3425"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"rich.meehan@example.com","login":{"uuid":"c0053db7-6f62-40d1-a1ab-dd816271de18","username":"sadgorilla782","password":"slick1","salt":"wYoUFeVE","md5":"778ace72fc8fbb4d667ae226417522b4","sha1":"b9fd8c7325fc3a4b082d9cc28aecf48708bd89ec","sha256":"fc9565f16c3719bcd916b8f4f0701666c6304c6824d6aa5e352889b1586ac558"},"dob":{"date":"1957-03-14T21:09:06.187Z","age":66},"registered":{"date":"2006-06-01T23:31:55.420Z","age":17},"phone":"021-231-1819","cell":"081-160-3218","id":{"name":"PPS","value":"6093565T"},"picture":{"large":"https://randomuser.me/api/portraits/men/15.jpg","medium":"https://randomuser.me/api/portraits/med/men/15.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/15.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Radivoje","last":"Kralj"},"location":{"street":{"number":6593,"name":"Lukarska"},"city":"Gornji Milanovac","state":"Podunavlje","country":"Serbia","postcode":74376,"coordinates":{"latitude":"76.9886","longitude":"-93.0939"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"radivoje.kralj@example.com","login":{"uuid":"f4d3ff9a-fa5d-43fc-8a2e-54b3c269a0e0","username":"organickoala857","password":"chao","salt":"XWWHFCwR","md5":"9c3e6f6448d191647e9731dcb23681d9","sha1":"21f13053bfeedea699e2e84a5c505c1e22ac98c2","sha256":"f8a53cb71b5b1404fbdaefb61654a536d67ed96e20cc9297cefeab23bac629c4"},"dob":{"date":"1985-03-08T00:14:34.954Z","age":38},"registered":{"date":"2010-07-21T13:10:14.801Z","age":13},"phone":"019-8421-210","cell":"063-3902-249","id":{"name":"SID","value":"643119613"},"picture":{"large":"https://randomuser.me/api/portraits/men/77.jpg","medium":"https://randomuser.me/api/portraits/med/men/77.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/77.jpg"},"nat":"RS"},{"gender":"male","name":{"title":"Mr","first":"Owen","last":"Sirko"},"location":{"street":{"number":9324,"name":"15th St"},"city":"Selkirk","state":"Prince Edward Island","country":"Canada","postcode":"C0O 6L2","coordinates":{"latitude":"-46.1779","longitude":"34.5187"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"owen.sirko@example.com","login":{"uuid":"9f51b1d7-1dc5-4ad0-b112-49501778add0","username":"biggoose538","password":"facial","salt":"5JJ5B4i0","md5":"c27d409f8952851dfad03691a3217bf4","sha1":"07316e445f19cac3e27a98d1a35aea812880c7e7","sha256":"a774ddb63207689f6e5f76c569a6c33c56c525d6c837773277a4bd689e43bf55"},"dob":{"date":"1997-03-18T03:26:22.385Z","age":26},"registered":{"date":"2003-11-10T14:12:08.756Z","age":20},"phone":"W12 Z29-1950","cell":"V01 P83-6671","id":{"name":"SIN","value":"790807481"},"picture":{"large":"https://randomuser.me/api/portraits/men/92.jpg","medium":"https://randomuser.me/api/portraits/med/men/92.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/92.jpg"},"nat":"CA"},{"gender":"female","name":{"title":"Ms","first":"Esparta","last":"Ulloa"},"location":{"street":{"number":1472,"name":"Pasaje Sur Velasco"},"city":"Agua Verde","state":"Baja California","country":"Mexico","postcode":55925,"coordinates":{"latitude":"-38.0834","longitude":"-1.0961"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"esparta.ulloa@example.com","login":{"uuid":"b0e68ca6-9015-4813-bfe3-61f2b25e5145","username":"angryostrich244","password":"oscar1","salt":"uOwVT38K","md5":"b00147b589748a8aff3461ea64536a11","sha1":"96c2d147486826ffea452822db7a61b9fc95fb63","sha256":"d814fac33da1854a600ecf56806182421d78f0c2fcc77f5613bf10fddeebe864"},"dob":{"date":"1965-11-22T09:20:10.779Z","age":58},"registered":{"date":"2021-10-31T06:01:41.471Z","age":2},"phone":"(665) 288 3982","cell":"(657) 451 4119","id":{"name":"NSS","value":"85 21 77 4623 4"},"picture":{"large":"https://randomuser.me/api/portraits/women/92.jpg","medium":"https://randomuser.me/api/portraits/med/women/92.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/92.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Mrs","first":"Begüm","last":"Bakırcıoğlu"},"location":{"street":{"number":2360,"name":"Necatibey Cd"},"city":"Ordu","state":"İzmir","country":"Turkey","postcode":46290,"coordinates":{"latitude":"-89.2258","longitude":"-4.3769"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"begum.bakircioglu@example.com","login":{"uuid":"f3b9053f-dc98-46f5-b3c9-75fd974685f4","username":"redtiger236","password":"darrel","salt":"n1e5k9oi","md5":"092ab2e3264a53a513a06e5b884ae1fe","sha1":"684b5143d3b0ee61c0c39693543a8d03e6fb883b","sha256":"8e4d5cd9d988019f0c36d030ce2bbfafe17755941eed81d26f0f44fd9758c38a"},"dob":{"date":"1966-10-12T02:20:05.683Z","age":57},"registered":{"date":"2004-07-27T05:15:09.673Z","age":19},"phone":"(632)-515-3071","cell":"(630)-169-5530","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/16.jpg","medium":"https://randomuser.me/api/portraits/med/women/16.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/16.jpg"},"nat":"TR"},{"gender":"female","name":{"title":"Miss","first":"Taylor","last":"Thompson"},"location":{"street":{"number":1177,"name":"W Campbell Ave"},"city":"Charlotte","state":"Mississippi","country":"United States","postcode":69719,"coordinates":{"latitude":"63.7297","longitude":"-42.5309"},"timezone":{"offset":"+3:30","description":"Tehran"}},"email":"taylor.thompson@example.com","login":{"uuid":"bdb799b0-6c01-4f10-b2d4-7fcd8bf83924","username":"purplesnake570","password":"turkey","salt":"TxW7PG89","md5":"e4d29c5ed917e458b9bce9d9b5037199","sha1":"d6c339c4dc1b05b83c4163b522bf7420807c21b7","sha256":"e14360379d0e048e3f285c5318051283f289dde18c0ab2a71ec721c6e0ebb059"},"dob":{"date":"1975-08-29T00:40:08.073Z","age":48},"registered":{"date":"2004-03-07T09:52:29.994Z","age":19},"phone":"(280) 547-3306","cell":"(921) 616-3406","id":{"name":"SSN","value":"828-25-2550"},"picture":{"large":"https://randomuser.me/api/portraits/women/33.jpg","medium":"https://randomuser.me/api/portraits/med/women/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/33.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"Martin","last":"Burton"},"location":{"street":{"number":5491,"name":"W Belt Line Rd"},"city":"Boulder","state":"Virginia","country":"United States","postcode":17856,"coordinates":{"latitude":"23.5011","longitude":"124.6329"},"timezone":{"offset":"-7:00","description":"Mountain Time (US & Canada)"}},"email":"martin.burton@example.com","login":{"uuid":"a3d14cdc-8b31-4720-9710-0756c5d6fd3c","username":"lazyrabbit128","password":"heather1","salt":"CCLxRk6Q","md5":"cb7dc8055b5e079fc0e5ea4ede3028ad","sha1":"6545fdf358123f4197e2e5e9abd50b4ae50f0b1d","sha256":"d3b8c48caab3ba00b596be9d861fa8aaaf6d5774c7d7430a95e675e3f2a1f574"},"dob":{"date":"1955-09-25T12:25:34.740Z","age":68},"registered":{"date":"2012-10-11T08:26:22.932Z","age":11},"phone":"(349) 330-0243","cell":"(471) 682-3494","id":{"name":"SSN","value":"424-92-7698"},"picture":{"large":"https://randomuser.me/api/portraits/men/93.jpg","medium":"https://randomuser.me/api/portraits/med/men/93.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/93.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"پرهام","last":"پارسا"},"location":{"street":{"number":8,"name":"خرمشهر"},"city":"سیرجان","state":"زنجان","country":"Iran","postcode":74777,"coordinates":{"latitude":"11.5640","longitude":"-67.9340"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"prhm.prs@example.com","login":{"uuid":"4a9ad89e-1c6a-48c8-a258-88714043e87f","username":"angrysnake572","password":"jess","salt":"agLUpqsE","md5":"68ca89d118fc63275a3b64df64a3a48f","sha1":"12eb0c645072a62926fbcd73b5f89aaee534c55c","sha256":"fbc53bdd65dfd7978380a3f7f99f265dfe7966af1d3a9f19fb4ec60b27d40b02"},"dob":{"date":"1958-08-17T22:41:25.702Z","age":65},"registered":{"date":"2006-03-23T11:54:54.697Z","age":17},"phone":"006-17343455","cell":"0991-770-2514","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/3.jpg","medium":"https://randomuser.me/api/portraits/med/men/3.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/3.jpg"},"nat":"IR"},{"gender":"male","name":{"title":"Mr","first":"Rishi","last":"Das"},"location":{"street":{"number":2478,"name":"S.A Rd"},"city":"Jalgaon","state":"Maharashtra","country":"India","postcode":64916,"coordinates":{"latitude":"61.9166","longitude":"140.6795"},"timezone":{"offset":"-6:00","description":"Central Time (US & Canada), Mexico City"}},"email":"rishi.das@example.com","login":{"uuid":"153c9e33-c15b-4485-a6ce-797087ec818f","username":"smallrabbit155","password":"mylife","salt":"AWZYK2ZL","md5":"bdac9e2fa937ba8037fa9e97ceaae5c1","sha1":"75f460ac46e545aa6a986b94c8f0916dfc985880","sha256":"01c52ca822b3b403d134d20f5bd8dc833472ac84fcfe8dcb7378c74f7fe772be"},"dob":{"date":"1947-10-29T02:59:00.462Z","age":76},"registered":{"date":"2012-05-21T12:12:33.098Z","age":11},"phone":"8406642300","cell":"9687105713","id":{"name":"UIDAI","value":"588418443926"},"picture":{"large":"https://randomuser.me/api/portraits/men/21.jpg","medium":"https://randomuser.me/api/portraits/med/men/21.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/21.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Mrs","first":"Siegried","last":"Kirsten"},"location":{"street":{"number":6437,"name":"Königsberger Straße"},"city":"Bad Tölz","state":"Bremen","country":"Germany","postcode":89717,"coordinates":{"latitude":"-53.1006","longitude":"91.3885"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"siegried.kirsten@example.com","login":{"uuid":"42a7988e-952e-4bfa-bbc3-ddf1282570e5","username":"brownduck980","password":"stargate","salt":"pAecj8oe","md5":"9d8838224187f64ead0dbe50df623efd","sha1":"89d8ed1120e98d60ae7608bfb67eda46ce0aaa78","sha256":"5837bc720fe5226ba6d1dd513941d04b8b884ef0be2c6b914da5970d8530c002"},"dob":{"date":"1972-02-16T12:36:44.768Z","age":51},"registered":{"date":"2009-05-02T06:01:33.057Z","age":14},"phone":"0800-0786194","cell":"0176-5062246","id":{"name":"SVNR","value":"18 160272 K 964"},"picture":{"large":"https://randomuser.me/api/portraits/women/69.jpg","medium":"https://randomuser.me/api/portraits/med/women/69.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/69.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Ms","first":"Silvia","last":"Lorenzo"},"location":{"street":{"number":9818,"name":"Calle de Tetuán"},"city":"Santa Cruz de Tenerife","state":"Castilla y León","country":"Spain","postcode":80794,"coordinates":{"latitude":"81.4038","longitude":"-28.3615"},"timezone":{"offset":"+4:30","description":"Kabul"}},"email":"silvia.lorenzo@example.com","login":{"uuid":"512a5e0b-421e-4297-9459-25178c76a6cd","username":"beautifulgorilla343","password":"another","salt":"YUvleF2V","md5":"2a968a5433417d690417f80cf88dc117","sha1":"fa1625f7b462b8e4d32d64d950320970cad08835","sha256":"30d6f82161c5e144fcedfa946de5cd1ab1f41e736b09cb11749a29323b6d04b4"},"dob":{"date":"1990-10-02T15:03:59.064Z","age":33},"registered":{"date":"2011-03-02T03:20:50.826Z","age":12},"phone":"994-594-062","cell":"603-756-985","id":{"name":"DNI","value":"71592563-Z"},"picture":{"large":"https://randomuser.me/api/portraits/women/86.jpg","medium":"https://randomuser.me/api/portraits/med/women/86.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/86.jpg"},"nat":"ES"},{"gender":"female","name":{"title":"Miss","first":"Mélina","last":"Moreau"},"location":{"street":{"number":9855,"name":"Place de L'Abbé-Franz-Stock"},"city":"Le Havre","state":"Landes","country":"France","postcode":32141,"coordinates":{"latitude":"72.0052","longitude":"-164.2212"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"melina.moreau@example.com","login":{"uuid":"43ec5fc1-6cba-4425-99c4-25dd2c6803c4","username":"silvergoose978","password":"bummer","salt":"KbHZRyzH","md5":"5152a41c28ff05973b44d3c9cfe7846c","sha1":"7cb71351588b4a29ad83cfb13fdd8c586091396a","sha256":"317968b0112a64bbe4aa2d60329de80d26a707acc5933d4c4250f780328a49b5"},"dob":{"date":"1969-01-03T15:25:23.477Z","age":54},"registered":{"date":"2017-12-30T07:45:39.575Z","age":6},"phone":"01-33-66-63-29","cell":"06-04-60-19-83","id":{"name":"INSEE","value":"2690018395384 95"},"picture":{"large":"https://randomuser.me/api/portraits/women/60.jpg","medium":"https://randomuser.me/api/portraits/med/women/60.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/60.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Javier","last":"Harvey"},"location":{"street":{"number":7718,"name":"Grove Road"},"city":"Oxford","state":"Mid Glamorgan","country":"United Kingdom","postcode":"DX4D 2NL","coordinates":{"latitude":"-75.6556","longitude":"-123.6161"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"javier.harvey@example.com","login":{"uuid":"10c35a35-102f-4783-9585-1b8ec6cb4054","username":"orangeostrich286","password":"kenworth","salt":"2V5HIThm","md5":"d8cbda81fa1d4eb6342f6acf52ab91ca","sha1":"7b44127d0f2a2f7a29b3b05702f4b6977ace962a","sha256":"dbb909a09443f7ec77bacb2afc859ce38e75a19f63ff36623b6f4f902c0e7135"},"dob":{"date":"1980-11-03T21:10:10.037Z","age":43},"registered":{"date":"2003-05-23T04:59:28.281Z","age":20},"phone":"013873 66589","cell":"07805 224461","id":{"name":"NINO","value":"WG 14 81 21 M"},"picture":{"large":"https://randomuser.me/api/portraits/men/25.jpg","medium":"https://randomuser.me/api/portraits/med/men/25.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/25.jpg"},"nat":"GB"},{"gender":"male","name":{"title":"Mr","first":"Taylor","last":"Lane"},"location":{"street":{"number":1606,"name":"Alexander Road"},"city":"St Davids","state":"County Londonderry","country":"United Kingdom","postcode":"Q17 7PX","coordinates":{"latitude":"-37.9293","longitude":"55.3120"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"taylor.lane@example.com","login":{"uuid":"76d817dc-d105-4a57-a7e5-90652fd35e3e","username":"silverladybug911","password":"rhythm","salt":"XRtcFk9b","md5":"bdae96e37a57d36ac34ac4e9c6123524","sha1":"de3bba89e7e7f9696f5a0f4df86b94fb4f1981fb","sha256":"50a2252749349c745b0f41e48718051661e7e23fb0ec5740f5c90daca4414bc9"},"dob":{"date":"1996-12-06T13:26:20.173Z","age":27},"registered":{"date":"2017-06-05T20:17:37.880Z","age":6},"phone":"016973 40712","cell":"07844 064835","id":{"name":"NINO","value":"NK 58 11 93 D"},"picture":{"large":"https://randomuser.me/api/portraits/men/29.jpg","medium":"https://randomuser.me/api/portraits/med/men/29.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/29.jpg"},"nat":"GB"},{"gender":"female","name":{"title":"Miss","first":"Jesús","last":"Diez"},"location":{"street":{"number":5092,"name":"Paseo de Extremadura"},"city":"Gandía","state":"Cataluña","country":"Spain","postcode":54265,"coordinates":{"latitude":"-40.0755","longitude":"94.1055"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"jesus.diez@example.com","login":{"uuid":"ae2b2cbd-ba40-44a4-8477-05e721a55035","username":"blackostrich196","password":"australi","salt":"suNBmmDK","md5":"01a11a5c0c84c8e1760577f653501e65","sha1":"797085d5b56749877d723509305730419ceda1a0","sha256":"5cade3c085afdba46261bade4b082bcf032ea68559d7f960376e754364932bda"},"dob":{"date":"1972-06-16T17:54:07.890Z","age":51},"registered":{"date":"2014-06-01T14:56:00.476Z","age":9},"phone":"971-618-481","cell":"623-683-522","id":{"name":"DNI","value":"95315337-T"},"picture":{"large":"https://randomuser.me/api/portraits/women/83.jpg","medium":"https://randomuser.me/api/portraits/med/women/83.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/83.jpg"},"nat":"ES"},{"gender":"male","name":{"title":"Mr","first":"Zdravko","last":"Lazović"},"location":{"street":{"number":2090,"name":"Rade Spasojevića"},"city":"Surdulica","state":"Raška","country":"Serbia","postcode":80436,"coordinates":{"latitude":"82.8624","longitude":"178.4985"},"timezone":{"offset":"0:00","description":"Western Europe Time, London, Lisbon, Casablanca"}},"email":"zdravko.lazovic@example.com","login":{"uuid":"71c6d42a-096e-416e-ac83-5006daca145e","username":"goldenmouse629","password":"better","salt":"UYOVIsFP","md5":"39a590b573cbe87e5697f32f0895cfdb","sha1":"d553fadfe02fb38c071243d09766bda703d7beec","sha256":"ffcfa5b3befc73168f37bcf10b34a9501c26b57c701506a04c132f4a464928ad"},"dob":{"date":"1964-10-11T13:02:35.252Z","age":59},"registered":{"date":"2021-11-13T20:41:33.304Z","age":2},"phone":"012-9640-681","cell":"068-0140-114","id":{"name":"SID","value":"628193080"},"picture":{"large":"https://randomuser.me/api/portraits/men/42.jpg","medium":"https://randomuser.me/api/portraits/med/men/42.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/42.jpg"},"nat":"RS"},{"gender":"female","name":{"title":"Ms","first":"Tilde","last":"Engebakken"},"location":{"street":{"number":7862,"name":"Skjelderups gate"},"city":"Sortland","state":"Buskerud","country":"Norway","postcode":"0208","coordinates":{"latitude":"28.3128","longitude":"-66.7022"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"tilde.engebakken@example.com","login":{"uuid":"3176c9ac-007f-45d3-b81c-7db6c3324362","username":"goldenmouse492","password":"1919","salt":"xNuVgOs6","md5":"32763bf23f7edb9fabc119265d2bd92d","sha1":"3c418890aafdf44990c20e0f4da55fb7c76a6268","sha256":"b56f99abdc23f84c78748b04eb3a630baf7abc0452147bd65973b4612689ba1a"},"dob":{"date":"1979-05-07T10:03:46.324Z","age":44},"registered":{"date":"2013-02-14T05:52:06.236Z","age":10},"phone":"58130355","cell":"97436241","id":{"name":"FN","value":"07057947432"},"picture":{"large":"https://randomuser.me/api/portraits/women/31.jpg","medium":"https://randomuser.me/api/portraits/med/women/31.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/31.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Jorge Luis","last":"Lebrón"},"location":{"street":{"number":9529,"name":"Eje vial Michoacán de Ocampo"},"city":"Cuautla","state":"Zacatecas","country":"Mexico","postcode":96440,"coordinates":{"latitude":"-66.4136","longitude":"129.2418"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"jorgeluis.lebron@example.com","login":{"uuid":"1f1a1631-ca0e-4599-9d0a-58a748bccc88","username":"blackbear140","password":"immortal","salt":"XQvhVS73","md5":"02b6d952a3f45f403d36659574a74569","sha1":"606ef4ae48f019174b42ac521c8e6d23bfa855d9","sha256":"fbceb055e8dbc0169934e4b5d935950ceef9536f7dc2b8a2637ab1b4417a2a9b"},"dob":{"date":"1946-07-06T21:09:41.866Z","age":77},"registered":{"date":"2012-04-17T03:00:02.354Z","age":11},"phone":"(659) 422 7640","cell":"(686) 574 0137","id":{"name":"NSS","value":"86 93 65 3864 2"},"picture":{"large":"https://randomuser.me/api/portraits/men/41.jpg","medium":"https://randomuser.me/api/portraits/med/men/41.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/41.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Mrs","first":"Eva","last":"Lévesque"},"location":{"street":{"number":6940,"name":"Brock Rd"},"city":"Lumsden","state":"Alberta","country":"Canada","postcode":"F9H 8O9","coordinates":{"latitude":"-6.8135","longitude":"-50.8940"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"eva.levesque@example.com","login":{"uuid":"b397db6c-2ec6-4434-a055-e1437fa7612e","username":"lazypeacock807","password":"rocky1","salt":"N2SZ6ev5","md5":"76cdf8dbaacc288d16d01c7490e68d39","sha1":"b9ebe91bdc3d2dff04d7438320a57d7c9bb0eb3c","sha256":"fbf347e201e2f002c2a380131bbd15c35aec9a99a5b1614ae7b7971b53ca2fb5"},"dob":{"date":"1962-07-27T09:05:32.679Z","age":61},"registered":{"date":"2003-01-27T04:52:59.742Z","age":20},"phone":"Z22 G84-4748","cell":"V59 K21-5134","id":{"name":"SIN","value":"042717231"},"picture":{"large":"https://randomuser.me/api/portraits/women/44.jpg","medium":"https://randomuser.me/api/portraits/med/women/44.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/44.jpg"},"nat":"CA"},{"gender":"female","name":{"title":"Mrs","first":"Anna","last":"Hansen"},"location":{"street":{"number":4445,"name":"Landevejen"},"city":"Århus C.","state":"Midtjylland","country":"Denmark","postcode":72005,"coordinates":{"latitude":"34.0283","longitude":"-119.5387"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"anna.hansen@example.com","login":{"uuid":"611bd4e0-bb1e-499e-be2f-5157e1ed24f3","username":"sadleopard614","password":"2004","salt":"5ArFmTtC","md5":"c7df613497a309b8d5411730728af2d4","sha1":"cb810130b221e99306c61dd20fc3cb28033581d9","sha256":"42226ed0ee1fbe244b212c1ab55382a8e59a772d0939d123fa216185750b8544"},"dob":{"date":"1964-01-23T14:53:50.711Z","age":59},"registered":{"date":"2016-03-15T03:57:19.661Z","age":7},"phone":"35442968","cell":"93176839","id":{"name":"CPR","value":"230164-1722"},"picture":{"large":"https://randomuser.me/api/portraits/women/34.jpg","medium":"https://randomuser.me/api/portraits/med/women/34.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/34.jpg"},"nat":"DK"},{"gender":"female","name":{"title":"Miss","first":"ستایش","last":"احمدی"},"location":{"street":{"number":5694,"name":"میدان رسالت"},"city":"بوشهر","state":"سیستان و بلوچستان","country":"Iran","postcode":70780,"coordinates":{"latitude":"86.2976","longitude":"-119.7140"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"stysh.hmdy@example.com","login":{"uuid":"f90d119d-59ab-43a7-8dd5-0577f8a868d4","username":"blackgorilla476","password":"derf","salt":"9nnPBuQY","md5":"923ffceb2ede1becdca013f25e5d10ff","sha1":"75b618d9cefc700be6e5debc944e61bb34999927","sha256":"d6fdc58f81432c0b734a2df89207fa98910590756d1e00818ba0bcd95bd2814f"},"dob":{"date":"1945-01-07T14:09:05.990Z","age":78},"registered":{"date":"2018-09-30T21:16:17.670Z","age":5},"phone":"077-84034211","cell":"0957-589-7344","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/71.jpg","medium":"https://randomuser.me/api/portraits/med/women/71.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/71.jpg"},"nat":"IR"},{"gender":"female","name":{"title":"Mrs","first":"Janet","last":"Thomas"},"location":{"street":{"number":3872,"name":"Rochestown Road"},"city":"Killarney","state":"Tipperary","country":"Ireland","postcode":28070,"coordinates":{"latitude":"-81.8531","longitude":"-84.1921"},"timezone":{"offset":"+5:30","description":"Bombay, Calcutta, Madras, New Delhi"}},"email":"janet.thomas@example.com","login":{"uuid":"6a8b15c6-919b-4c99-b1fb-074f2b5606b1","username":"brownrabbit512","password":"chrissy","salt":"PoIhpc0G","md5":"d77e7009f4ab9248ee9f92985e93e981","sha1":"c0f38409a7b69009e5560af9930a617f13111bf5","sha256":"e7cfa4022902a2b358e0212a9e76260eda18bf6d492da67d5202268db356dd3e"},"dob":{"date":"1987-06-01T17:41:22.632Z","age":36},"registered":{"date":"2011-03-20T02:56:44.137Z","age":12},"phone":"031-343-8347","cell":"081-477-2106","id":{"name":"PPS","value":"1845185T"},"picture":{"large":"https://randomuser.me/api/portraits/women/32.jpg","medium":"https://randomuser.me/api/portraits/med/women/32.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/32.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Jesus","last":"Barnett"},"location":{"street":{"number":2737,"name":"Avondale Ave"},"city":"Burkburnett","state":"Colorado","country":"United States","postcode":12899,"coordinates":{"latitude":"-86.1750","longitude":"95.1849"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"jesus.barnett@example.com","login":{"uuid":"8e8a2cf7-e495-48fd-8b92-fd8bc86eacf1","username":"smallpanda425","password":"2020","salt":"v9yPTRZC","md5":"dd879d708ceb8fb2c20347840f7eaabc","sha1":"6c27f310f6aaa67c65e766fdfc3816d96dd35436","sha256":"5d5a23c028d217f70ab60a8f673280e4799e48e49e450fdec26715ec2aa9d4cc"},"dob":{"date":"1944-10-17T20:41:35.721Z","age":79},"registered":{"date":"2017-04-14T05:39:40.491Z","age":6},"phone":"(299) 283-0819","cell":"(431) 745-7239","id":{"name":"SSN","value":"445-26-2963"},"picture":{"large":"https://randomuser.me/api/portraits/men/97.jpg","medium":"https://randomuser.me/api/portraits/med/men/97.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/97.jpg"},"nat":"US"},{"gender":"female","name":{"title":"Mrs","first":"Eva","last":"Moore"},"location":{"street":{"number":9311,"name":"Caversham Valley Road"},"city":"Whanganui","state":"Waikato","country":"New Zealand","postcode":80662,"coordinates":{"latitude":"56.1132","longitude":"-150.8932"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"eva.moore@example.com","login":{"uuid":"c7d21099-74ac-45ee-a2a0-085a5cbef9a0","username":"greenpanda278","password":"cbr900rr","salt":"7LlFDwo2","md5":"090fa3c1e25e41b08f7396811d89171a","sha1":"8099b805f89e38b6cccf659aaed7fcb34c42b5ab","sha256":"12da28739fcdcdd32bad4c846ddf6e23ac0d27d9a7e09a6fc4334db1b328803f"},"dob":{"date":"1952-12-15T03:51:27.445Z","age":71},"registered":{"date":"2021-10-23T10:59:57.114Z","age":2},"phone":"(877)-173-3952","cell":"(887)-772-9922","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/88.jpg","medium":"https://randomuser.me/api/portraits/med/women/88.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/88.jpg"},"nat":"NZ"},{"gender":"female","name":{"title":"Ms","first":"Naomi","last":"Williams"},"location":{"street":{"number":3590,"name":"Depaul Dr"},"city":"Queanbeyan","state":"Tasmania","country":"Australia","postcode":1886,"coordinates":{"latitude":"32.7787","longitude":"-122.3937"},"timezone":{"offset":"-7:00","description":"Mountain Time (US & Canada)"}},"email":"naomi.williams@example.com","login":{"uuid":"5ff993cd-5ed3-48b6-9172-3fd832cb7a46","username":"organicdog526","password":"traffic","salt":"YayOcncV","md5":"bbce71ed968f6d514bc6b50d70624104","sha1":"a83570442e708102b14a3444a4f449f44555f6ff","sha256":"90e66b7b3ba5985583bb7f0593661c765f315df1b90b3dfa50f3407f3bae7e06"},"dob":{"date":"1946-04-01T16:16:49.987Z","age":77},"registered":{"date":"2017-11-04T14:08:12.754Z","age":6},"phone":"06-9372-8188","cell":"0468-979-705","id":{"name":"TFN","value":"848152145"},"picture":{"large":"https://randomuser.me/api/portraits/women/22.jpg","medium":"https://randomuser.me/api/portraits/med/women/22.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/22.jpg"},"nat":"AU"},{"gender":"female","name":{"title":"Mrs","first":"Lea","last":"Møller"},"location":{"street":{"number":7114,"name":"Gammel Kirkevej"},"city":"København N","state":"Danmark","country":"Denmark","postcode":55628,"coordinates":{"latitude":"-11.0531","longitude":"144.9529"},"timezone":{"offset":"+7:00","description":"Bangkok, Hanoi, Jakarta"}},"email":"lea.moller@example.com","login":{"uuid":"c22aa38a-663d-41e2-b324-ae2612963838","username":"smallbutterfly293","password":"frisky","salt":"087yZeiH","md5":"e1bed1cd2241e373d22f7114010f7dae","sha1":"68eb665ef087443a42a937119155a3ccc172404d","sha256":"d3427855b079e682d98dd8ae432e7aa91b96060aaa3a316ae4e5e68f21361f0a"},"dob":{"date":"1993-01-08T18:02:58.096Z","age":30},"registered":{"date":"2013-03-31T11:57:44.579Z","age":10},"phone":"52691853","cell":"15130389","id":{"name":"CPR","value":"080193-4590"},"picture":{"large":"https://randomuser.me/api/portraits/women/13.jpg","medium":"https://randomuser.me/api/portraits/med/women/13.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/13.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Nelson","last":"Simpson"},"location":{"street":{"number":7021,"name":"Richmond Park"},"city":"Maynooth","state":"Roscommon","country":"Ireland","postcode":53620,"coordinates":{"latitude":"-27.5199","longitude":"-146.0364"},"timezone":{"offset":"+5:45","description":"Kathmandu"}},"email":"nelson.simpson@example.com","login":{"uuid":"c2a6019f-8951-4f8e-a391-e27ab6cea8ff","username":"silverduck416","password":"swords","salt":"pxrgTZct","md5":"581afa41632783d12c89d918e7dea5ba","sha1":"543bb8de3bba4656a332494266d6cd05734bd6c6","sha256":"f02e6e9bee0e2e0c816f1e0e05cf952ee0e98afbc614522b692c10a91221af8d"},"dob":{"date":"1971-11-24T02:58:22.363Z","age":52},"registered":{"date":"2013-03-17T07:20:34.520Z","age":10},"phone":"031-769-5466","cell":"081-241-8821","id":{"name":"PPS","value":"7225361T"},"picture":{"large":"https://randomuser.me/api/portraits/men/53.jpg","medium":"https://randomuser.me/api/portraits/med/men/53.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/53.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Ramon","last":"Bailey"},"location":{"street":{"number":2547,"name":"George Street"},"city":"Aberdeen","state":"East Sussex","country":"United Kingdom","postcode":"F1 1XE","coordinates":{"latitude":"76.9049","longitude":"41.5981"},"timezone":{"offset":"+6:00","description":"Almaty, Dhaka, Colombo"}},"email":"ramon.bailey@example.com","login":{"uuid":"d88151d0-66b5-4519-a418-29570bd3d394","username":"heavykoala368","password":"lollipop","salt":"YKCPrtmy","md5":"0d473cb2f8de3a0ca17a05a793d3c906","sha1":"a282ed82d2b7eee89efead9379f54478bd6f3621","sha256":"c012f865667d1721ce6758f281efded0c3da74a4402435fab9d1b6dbe07ffc07"},"dob":{"date":"1972-07-12T15:00:48.151Z","age":51},"registered":{"date":"2015-01-03T05:14:04.976Z","age":8},"phone":"015396 58737","cell":"07647 500317","id":{"name":"NINO","value":"SH 65 90 44 T"},"picture":{"large":"https://randomuser.me/api/portraits/men/28.jpg","medium":"https://randomuser.me/api/portraits/med/men/28.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/28.jpg"},"nat":"GB"},{"gender":"female","name":{"title":"Ms","first":"Vishrutha","last":"Kamath"},"location":{"street":{"number":9387,"name":"MG Rd Bangalore"},"city":"Mirzapur","state":"Tripura","country":"India","postcode":64923,"coordinates":{"latitude":"0.1626","longitude":"22.3296"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"vishrutha.kamath@example.com","login":{"uuid":"0f2a138d-1e17-4796-b2ea-67c038e37f25","username":"beautifulfish554","password":"andy","salt":"WOm4iTu7","md5":"255b8c8a4fa962db4c81e5c3f34587c8","sha1":"c5edd02cd4c1996de735164251280b8628ba9613","sha256":"1960d665e01c3be042dd3faa1422e14b36a5a1c5eabcdbf1ec4e3926b4e4a21f"},"dob":{"date":"1975-04-23T02:44:01.733Z","age":48},"registered":{"date":"2008-10-18T14:44:49.331Z","age":15},"phone":"9590808886","cell":"7062909255","id":{"name":"UIDAI","value":"640687850614"},"picture":{"large":"https://randomuser.me/api/portraits/women/55.jpg","medium":"https://randomuser.me/api/portraits/med/women/55.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/55.jpg"},"nat":"IN"},{"gender":"male","name":{"title":"Mr","first":"Gabriel","last":"Balderas"},"location":{"street":{"number":1320,"name":"Calzada Gastélum"},"city":"Las Jicamas","state":"Chihuahua","country":"Mexico","postcode":20891,"coordinates":{"latitude":"-86.2281","longitude":"-150.5140"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"gabriel.balderas@example.com","login":{"uuid":"4654b28d-467f-4763-bf4b-aee97fcd0386","username":"ticklishfrog426","password":"freaky","salt":"znZ1bSDa","md5":"de41ac7c28d5da74df6efab513955fc0","sha1":"6acb0539049a701ee4f194c6838b33fa8821a351","sha256":"d7afb275f95ab5021a745eee8405d9d0b14bde8d0acd95d311f04aef983d9ebc"},"dob":{"date":"1965-05-10T02:51:21.538Z","age":58},"registered":{"date":"2004-01-20T14:50:11.700Z","age":19},"phone":"(637) 998 8630","cell":"(607) 598 7929","id":{"name":"NSS","value":"13 48 08 1095 7"},"picture":{"large":"https://randomuser.me/api/portraits/men/39.jpg","medium":"https://randomuser.me/api/portraits/med/men/39.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/39.jpg"},"nat":"MX"},{"gender":"male","name":{"title":"Mr","first":"Charles","last":"Lorenz"},"location":{"street":{"number":2887,"name":"Ahornweg"},"city":"Wildeshausen","state":"Schleswig-Holstein","country":"Germany","postcode":18177,"coordinates":{"latitude":"39.5541","longitude":"-178.3550"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"charles.lorenz@example.com","login":{"uuid":"19b34477-0d83-4300-a2b5-75788f3bc049","username":"beautifulkoala247","password":"newman","salt":"ybdCvDpb","md5":"496c54d4476c3a6680cce592034beef5","sha1":"6beac08bb9ba44767953cbcaef40baf25f92aac0","sha256":"f2909e920d4b4a9f80040c90e97a8761351408a78d128adba119aeb63d2b9365"},"dob":{"date":"1960-03-10T01:40:04.265Z","age":63},"registered":{"date":"2020-08-15T08:52:49.367Z","age":3},"phone":"0311-5276389","cell":"0171-9444444","id":{"name":"SVNR","value":"48 090360 L 280"},"picture":{"large":"https://randomuser.me/api/portraits/men/83.jpg","medium":"https://randomuser.me/api/portraits/med/men/83.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/83.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Siddharth","last":"Nayak"},"location":{"street":{"number":785,"name":"Ashoka Rd"},"city":"Alwar","state":"Jammu and Kashmir","country":"India","postcode":67162,"coordinates":{"latitude":"-69.8353","longitude":"-24.2890"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"siddharth.nayak@example.com","login":{"uuid":"90c333c6-996c-4dd9-9d9a-cc0083a71a96","username":"blackzebra999","password":"989898","salt":"R7q01xyG","md5":"8a84aa05b8d81fe9cbda793d97859183","sha1":"dcd52a0f27fe6757cb92cbf2cfce78ffdada4c54","sha256":"987836cff724b521d2eb03939edd6703368d66886608f8e59c6671a62d0965eb"},"dob":{"date":"1990-07-31T13:39:44.624Z","age":33},"registered":{"date":"2008-08-31T12:39:49.757Z","age":15},"phone":"7167226772","cell":"8095821924","id":{"name":"UIDAI","value":"561922820562"},"picture":{"large":"https://randomuser.me/api/portraits/men/94.jpg","medium":"https://randomuser.me/api/portraits/med/men/94.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/94.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Mrs","first":"Harper","last":"Jones"},"location":{"street":{"number":4267,"name":"Wairau Road"},"city":"Auckland","state":"Otago","country":"New Zealand","postcode":28427,"coordinates":{"latitude":"-43.6397","longitude":"-40.6348"},"timezone":{"offset":"+9:00","description":"Tokyo, Seoul, Osaka, Sapporo, Yakutsk"}},"email":"harper.jones@example.com","login":{"uuid":"00aaec20-9b15-49ec-a1d7-75e4a38d677a","username":"happyladybug758","password":"freefree","salt":"7dHqoYiS","md5":"d760ba72cfa8358a0f5a05ade4c3d543","sha1":"46754c1214eb0ad4b6c9a4c4e78d26b659767809","sha256":"326be71554cc67a1ca5995a4167266ccdf09b8125fdbb253bf996ceea6493517"},"dob":{"date":"1989-09-02T14:16:34.226Z","age":34},"registered":{"date":"2012-06-05T06:49:58.818Z","age":11},"phone":"(899)-736-9264","cell":"(709)-517-8014","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/28.jpg","medium":"https://randomuser.me/api/portraits/med/women/28.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/28.jpg"},"nat":"NZ"},{"gender":"male","name":{"title":"Mr","first":"Nikolaj","last":"Christiansen"},"location":{"street":{"number":1395,"name":"Ribe Landevej"},"city":"Noerre Alslev","state":"Sjælland","country":"Denmark","postcode":89609,"coordinates":{"latitude":"10.1745","longitude":"-151.2704"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"nikolaj.christiansen@example.com","login":{"uuid":"4e46102f-31d3-43f7-9bc0-00bd92f6a909","username":"crazyrabbit675","password":"mommy","salt":"DhfcLTn9","md5":"9bce1bacf9f3ad0a06f865c57d57341a","sha1":"8c474a81b94071ed23e40b9d8db77a2ac9fbdc8e","sha256":"2c8a97b3926de9552fa6d19dabbbb32c51cbb2c7034d0905566dea84d562eebf"},"dob":{"date":"1990-11-08T00:10:09.673Z","age":33},"registered":{"date":"2012-12-21T03:51:38.842Z","age":11},"phone":"66426450","cell":"04333819","id":{"name":"CPR","value":"071190-3977"},"picture":{"large":"https://randomuser.me/api/portraits/men/86.jpg","medium":"https://randomuser.me/api/portraits/med/men/86.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/86.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Lorenzo","last":"Suarez"},"location":{"street":{"number":1423,"name":"Calle de La Almudena"},"city":"Pontevedra","state":"Región de Murcia","country":"Spain","postcode":86044,"coordinates":{"latitude":"-36.1695","longitude":"-78.3128"},"timezone":{"offset":"+3:30","description":"Tehran"}},"email":"lorenzo.suarez@example.com","login":{"uuid":"7b3f648d-7aaf-4ac5-8db5-318dc1164c7e","username":"blueswan741","password":"giorgio","salt":"p5HOUn5L","md5":"26667002fc7eb879b816590a5bb7d174","sha1":"e7d1f3a19a5616d6629f578a2c140c7be9edb534","sha256":"bfa0e608d0db6e6762882d726139d5faebc0ee674e08ccf6b736c2d3aa9d743d"},"dob":{"date":"1989-09-20T16:11:07.300Z","age":34},"registered":{"date":"2008-12-01T02:53:43.792Z","age":15},"phone":"911-506-084","cell":"668-002-322","id":{"name":"DNI","value":"29576111-O"},"picture":{"large":"https://randomuser.me/api/portraits/men/8.jpg","medium":"https://randomuser.me/api/portraits/med/men/8.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/8.jpg"},"nat":"ES"},{"gender":"male","name":{"title":"Mr","first":"Troy","last":"Harvey"},"location":{"street":{"number":1395,"name":"Bollinger Rd"},"city":"Riverside","state":"Colorado","country":"United States","postcode":20204,"coordinates":{"latitude":"75.3938","longitude":"-24.7915"},"timezone":{"offset":"-7:00","description":"Mountain Time (US & Canada)"}},"email":"troy.harvey@example.com","login":{"uuid":"8e709415-b8af-4d9b-a8e4-8a5f6fcb01f3","username":"crazyrabbit802","password":"waldo","salt":"R8Hp3x2t","md5":"27ea064c6316f3fd3d6d35ca974aa73d","sha1":"0958be5b5c8e0637717cab3add3e4fb7bfb2d5d1","sha256":"fc3cb5b62e00a3659b6a8ec661cdafa42fe642d03dd5dcc89353977e231482a5"},"dob":{"date":"1980-08-20T22:37:30.744Z","age":43},"registered":{"date":"2021-08-31T14:08:28.977Z","age":2},"phone":"(243) 815-4212","cell":"(404) 325-2790","id":{"name":"SSN","value":"173-96-0802"},"picture":{"large":"https://randomuser.me/api/portraits/men/67.jpg","medium":"https://randomuser.me/api/portraits/med/men/67.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/67.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"Julius","last":"Manni"},"location":{"street":{"number":5230,"name":"Otavalankatu"},"city":"Kontiolahti","state":"Päijät-Häme","country":"Finland","postcode":65491,"coordinates":{"latitude":"-20.7600","longitude":"12.6158"},"timezone":{"offset":"+9:30","description":"Adelaide, Darwin"}},"email":"julius.manni@example.com","login":{"uuid":"3908db66-82c6-4f6c-9255-aa954e06a12f","username":"organicrabbit157","password":"sinned","salt":"xZv9Qq7J","md5":"6a10a84ffaeee6e18e2c40fbd9067c1b","sha1":"f1ebbaafbea9883529a17582d25fa4fcd73df458","sha256":"cdad4cd11ec58f6757389df39b0c8928ffde782a7251d478d4f0e9a7443c1d12"},"dob":{"date":"1989-05-07T01:43:56.213Z","age":34},"registered":{"date":"2015-01-07T04:14:36.529Z","age":8},"phone":"08-068-808","cell":"040-558-43-87","id":{"name":"HETU","value":"NaNNA419undefined"},"picture":{"large":"https://randomuser.me/api/portraits/men/9.jpg","medium":"https://randomuser.me/api/portraits/med/men/9.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/9.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Tim","last":"Olivier"},"location":{"street":{"number":6428,"name":"Rue Courbet"},"city":"Aulnay-sous-Bois","state":"Moselle","country":"France","postcode":61318,"coordinates":{"latitude":"54.5864","longitude":"-55.8357"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"tim.olivier@example.com","login":{"uuid":"2e5f95d6-7576-48c3-9acd-ce88b1388b3a","username":"bluepanda926","password":"1959","salt":"SimIPvkb","md5":"2be4c0100c5cce817897dab1fa807e15","sha1":"83ff384db4bc3354ad3d5e7c3405f09a6a97bd10","sha256":"d0a70795257b93a90f86c06d10344abbcc5ad91f23fa0bb385a127a03d1c9905"},"dob":{"date":"1968-09-12T12:21:59.002Z","age":55},"registered":{"date":"2011-10-14T19:52:49.494Z","age":12},"phone":"01-72-05-65-59","cell":"06-25-07-07-67","id":{"name":"INSEE","value":"1680814226007 57"},"picture":{"large":"https://randomuser.me/api/portraits/men/5.jpg","medium":"https://randomuser.me/api/portraits/med/men/5.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/5.jpg"},"nat":"FR"},{"gender":"female","name":{"title":"Ms","first":"Tilla","last":"Hagland"},"location":{"street":{"number":3814,"name":"Bjørnslettstubben"},"city":"Mesnali","state":"Oppland","country":"Norway","postcode":"1368","coordinates":{"latitude":"-79.5455","longitude":"-87.0072"},"timezone":{"offset":"-5:00","description":"Eastern Time (US & Canada), Bogota, Lima"}},"email":"tilla.hagland@example.com","login":{"uuid":"c4bdfd01-b946-4026-8729-1a8e0b7707c3","username":"bigduck681","password":"foxtrot","salt":"xD99T62M","md5":"65289a3258f8d1ac9fc2e90bd86787c1","sha1":"9e1387f365feb873c6ac5efb6226e65c963be74e","sha256":"4778c903258ee4c55869a475199062b84d503290b7834b63231095ce31f6887c"},"dob":{"date":"1977-12-29T13:24:32.797Z","age":46},"registered":{"date":"2006-06-23T14:27:47.880Z","age":17},"phone":"78554037","cell":"95900881","id":{"name":"FN","value":"29127703254"},"picture":{"large":"https://randomuser.me/api/portraits/women/73.jpg","medium":"https://randomuser.me/api/portraits/med/women/73.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/73.jpg"},"nat":"NO"},{"gender":"female","name":{"title":"Miss","first":"Mille","last":"Schie"},"location":{"street":{"number":9381,"name":"Alnagata"},"city":"Tveteneåsen","state":"Finnmark - Finnmárku","country":"Norway","postcode":"9068","coordinates":{"latitude":"72.3731","longitude":"-54.5372"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"mille.schie@example.com","login":{"uuid":"501aa9df-1c0f-43f8-9432-e35128eb2b87","username":"ticklishmouse673","password":"patton","salt":"JYCm5IQt","md5":"042a9e88d220ffc9ad19558dc4f30774","sha1":"89af725b196d3f30dafa0c99f216f03f8cf08b33","sha256":"d1f3d03c4a6c1dfa005ae66f2ffdf9f6acf1e8d15512c030e76908ab367faf32"},"dob":{"date":"1987-12-22T01:41:38.441Z","age":36},"registered":{"date":"2004-03-27T11:27:54.131Z","age":19},"phone":"33900082","cell":"40182966","id":{"name":"FN","value":"22128715626"},"picture":{"large":"https://randomuser.me/api/portraits/women/0.jpg","medium":"https://randomuser.me/api/portraits/med/women/0.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/0.jpg"},"nat":"NO"},{"gender":"female","name":{"title":"Mrs","first":"یسنا","last":"صدر"},"location":{"street":{"number":4562,"name":"شهید همت"},"city":"دزفول","state":"بوشهر","country":"Iran","postcode":42117,"coordinates":{"latitude":"-2.7645","longitude":"43.7257"},"timezone":{"offset":"-4:00","description":"Atlantic Time (Canada), Caracas, La Paz"}},"email":"ysn.sdr@example.com","login":{"uuid":"1593e592-43d6-4da9-aa3b-1d7dc7a37406","username":"yellowostrich293","password":"queen","salt":"XoaKRBKR","md5":"3c2f43fa92ee984f26355af7d838c6b2","sha1":"f7c766135a5d5df6d14b5047c12a8c8cae780f8b","sha256":"0cbfd38f4fa10219000a960dc4f362dd2ae6355ff1f8da0af61b2d6061219ba3"},"dob":{"date":"1972-11-28T00:24:33.636Z","age":51},"registered":{"date":"2020-07-25T16:05:04.872Z","age":3},"phone":"035-20158932","cell":"0969-506-6575","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/33.jpg","medium":"https://randomuser.me/api/portraits/med/women/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/33.jpg"},"nat":"IR"},{"gender":"female","name":{"title":"Mrs","first":"Sowmya","last":"Mendonsa"},"location":{"street":{"number":6834,"name":"Camac St"},"city":"Bahraich","state":"Maharashtra","country":"India","postcode":32370,"coordinates":{"latitude":"76.7693","longitude":"-70.7224"},"timezone":{"offset":"-12:00","description":"Eniwetok, Kwajalein"}},"email":"sowmya.mendonsa@example.com","login":{"uuid":"5f7cd4c9-9a3d-4094-b679-2a954bb894b2","username":"blackpanda864","password":"canada","salt":"IM54M62x","md5":"95e81b1a0512ab6d22be63f79a23272c","sha1":"bc8a64e25600418b51cc80d768ba0a0fd9c3a3f2","sha256":"bccc908e00909940a50d5afb0a58bbb3cc2e43275e93e1b6bc79ff06bfa2209f"},"dob":{"date":"2001-05-19T17:13:53.527Z","age":22},"registered":{"date":"2008-05-05T12:22:53.542Z","age":15},"phone":"9206918494","cell":"7661683597","id":{"name":"UIDAI","value":"890046666091"},"picture":{"large":"https://randomuser.me/api/portraits/women/85.jpg","medium":"https://randomuser.me/api/portraits/med/women/85.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/85.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Mrs","first":"Lola","last":"Simmmons"},"location":{"street":{"number":5291,"name":"George Street"},"city":"Killarney","state":"Wexford","country":"Ireland","postcode":74935,"coordinates":{"latitude":"76.0597","longitude":"113.4063"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"lola.simmmons@example.com","login":{"uuid":"4a9e2907-fe61-4e72-8762-c7c48ad327d1","username":"blackbird310","password":"casey1","salt":"nmkHGO7J","md5":"b09a59a129da095b2d733767f623e3e6","sha1":"d6d97d1c48938e9b2611d74e71d8f7cd288a36e4","sha256":"d94a056e96a73cf3bc6d589db23433ea1e99cb2516b4f3cd2469a0c7d526d040"},"dob":{"date":"1961-05-27T17:25:04.920Z","age":62},"registered":{"date":"2017-04-12T11:33:50.519Z","age":6},"phone":"041-192-0416","cell":"081-697-9040","id":{"name":"PPS","value":"5805196T"},"picture":{"large":"https://randomuser.me/api/portraits/women/55.jpg","medium":"https://randomuser.me/api/portraits/med/women/55.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/55.jpg"},"nat":"IE"},{"gender":"male","name":{"title":"Mr","first":"Pranav","last":"Bansal"},"location":{"street":{"number":5665,"name":"Tank Bund Rd"},"city":"Hajipur","state":"Daman and Diu","country":"India","postcode":42481,"coordinates":{"latitude":"-48.7269","longitude":"-139.7465"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"pranav.bansal@example.com","login":{"uuid":"775e8e20-c36c-4b40-82f0-cc7eec4d7969","username":"bluemouse771","password":"shannon","salt":"GImjTarj","md5":"6d5021c7036203cbf10adedc070bc608","sha1":"c1b6dd0553d9e1645ab821948ce82f2b68cf7c3a","sha256":"38195fb728cbbad5b56b8cbd57ca9fd3be2e72bf29a453e1d1969a7b1f40f656"},"dob":{"date":"1977-03-20T10:11:50.464Z","age":46},"registered":{"date":"2010-10-27T21:12:44.507Z","age":13},"phone":"7880783207","cell":"9943184129","id":{"name":"UIDAI","value":"470759266922"},"picture":{"large":"https://randomuser.me/api/portraits/men/43.jpg","medium":"https://randomuser.me/api/portraits/med/men/43.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/43.jpg"},"nat":"IN"},{"gender":"female","name":{"title":"Miss","first":"Lea","last":"Sørensen"},"location":{"street":{"number":1682,"name":"Langagervej"},"city":"Hammel","state":"Nordjylland","country":"Denmark","postcode":68450,"coordinates":{"latitude":"-19.8772","longitude":"-158.1185"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"lea.sorensen@example.com","login":{"uuid":"0419e6b6-b81f-4d51-9b37-841d8b725a12","username":"purplerabbit796","password":"cole","salt":"zOcUJ6Gl","md5":"60a8700a53e0e512cff06e0e0a0615aa","sha1":"9c36c9585a2560dda0e7842c54c01b8a806b38a0","sha256":"9e41d3d5d8943a553c67ffbc3bcf92949f4fc86020fc6f5d67d4279a749ee392"},"dob":{"date":"1956-11-06T01:19:01.757Z","age":67},"registered":{"date":"2010-01-21T09:36:14.262Z","age":13},"phone":"88212079","cell":"36061458","id":{"name":"CPR","value":"051156-1784"},"picture":{"large":"https://randomuser.me/api/portraits/women/70.jpg","medium":"https://randomuser.me/api/portraits/med/women/70.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/70.jpg"},"nat":"DK"},{"gender":"male","name":{"title":"Mr","first":"Julian","last":"Shaw"},"location":{"street":{"number":3428,"name":"York Road"},"city":"Worcester","state":"West Midlands","country":"United Kingdom","postcode":"H13 5XU","coordinates":{"latitude":"19.9283","longitude":"154.2890"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"julian.shaw@example.com","login":{"uuid":"68a8408d-da3b-4a93-a0bc-b270c23f63a0","username":"tinyduck786","password":"nova","salt":"F6JR0F1L","md5":"20d8103bc3ec864ad7af6cef6aa3b069","sha1":"f59468338f9a7a07d1c9540b72ec8125a68ec58f","sha256":"93d499dcf993f36a1ac2463d1ebee1ce6104513bc83b6630274c5f2361dd7d36"},"dob":{"date":"2001-05-18T18:31:57.998Z","age":22},"registered":{"date":"2010-09-24T12:42:40.359Z","age":13},"phone":"019467 26131","cell":"07834 816284","id":{"name":"NINO","value":"ZT 74 30 12 H"},"picture":{"large":"https://randomuser.me/api/portraits/men/6.jpg","medium":"https://randomuser.me/api/portraits/med/men/6.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/6.jpg"},"nat":"GB"},{"gender":"female","name":{"title":"Miss","first":"Diane","last":"Leroux"},"location":{"street":{"number":9829,"name":"Place du 22 Novembre 1943"},"city":"Asnières-sur-Seine","state":"Drôme","country":"France","postcode":29009,"coordinates":{"latitude":"-4.6459","longitude":"89.2087"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"diane.leroux@example.com","login":{"uuid":"5e17d282-fd2d-45c0-be4c-e05c37229145","username":"saddog535","password":"wilbur","salt":"SJWlNXO3","md5":"c7339ca1e3246abe8b9c072c8d8499ee","sha1":"f39b1fd49b3ca51cb6b345877a2177f84f160cf6","sha256":"94b3636f32e25236fefa739dda9c3880dd24975e9ec3a6dfc9a1f30fc6a38b8d"},"dob":{"date":"1978-05-21T09:43:17.098Z","age":45},"registered":{"date":"2008-05-20T12:11:21.496Z","age":15},"phone":"05-07-00-16-04","cell":"06-63-85-28-97","id":{"name":"INSEE","value":"2780456378779 68"},"picture":{"large":"https://randomuser.me/api/portraits/women/47.jpg","medium":"https://randomuser.me/api/portraits/med/women/47.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/47.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Kuzman","last":"Blažić"},"location":{"street":{"number":7305,"name":"Andrije Stojkovića"},"city":"Aranđelovac","state":"Moravica","country":"Serbia","postcode":34173,"coordinates":{"latitude":"-41.7769","longitude":"157.5027"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"kuzman.blazic@example.com","login":{"uuid":"0ba8e670-a7e5-4809-9f0d-0e67c93bb8df","username":"crazyduck896","password":"none","salt":"c0QgjNCa","md5":"5f5e7339158cd76bfa7121b2fe1756d2","sha1":"7ba874e981111ca0aeb6d786d3b5dc9cdf663e15","sha256":"505e3fb0f14b60d11f65c64c256e8e5d696b6b3d6517a85b5f5a3d08a234d90e"},"dob":{"date":"1987-10-09T01:03:56.871Z","age":36},"registered":{"date":"2004-09-05T14:07:16.479Z","age":19},"phone":"025-8535-674","cell":"065-1759-892","id":{"name":"SID","value":"731019470"},"picture":{"large":"https://randomuser.me/api/portraits/men/92.jpg","medium":"https://randomuser.me/api/portraits/med/men/92.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/92.jpg"},"nat":"RS"},{"gender":"male","name":{"title":"Monsieur","first":"Patrice","last":"Louis"},"location":{"street":{"number":8641,"name":"Place du 8 Février 1962"},"city":"Filisur","state":"Fribourg","country":"Switzerland","postcode":2537,"coordinates":{"latitude":"-5.9245","longitude":"-22.7252"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"patrice.louis@example.com","login":{"uuid":"c3db3b13-5d8c-4979-8878-58d32e524873","username":"brownkoala579","password":"funky","salt":"agrWMFOS","md5":"2002e3196910a7710c6d1a01e8c7de7b","sha1":"4e1a31571c6a8e26b020f28339a6653c62e2a69e","sha256":"581b2a68ad653377fdbe935f01fc0d8410ae43d4de12e17538b1f06fb5560c4d"},"dob":{"date":"1974-04-01T08:25:31.009Z","age":49},"registered":{"date":"2019-01-04T13:08:12.221Z","age":4},"phone":"078 686 57 20","cell":"078 663 53 55","id":{"name":"AVS","value":"756.3585.7877.61"},"picture":{"large":"https://randomuser.me/api/portraits/men/49.jpg","medium":"https://randomuser.me/api/portraits/med/men/49.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/49.jpg"},"nat":"CH"},{"gender":"male","name":{"title":"Mr","first":"Lyubomil","last":"Fedik"},"location":{"street":{"number":9383,"name":"Pozharova"},"city":"Berdichiv","state":"Avtonomna Respublika Krim","country":"Ukraine","postcode":87051,"coordinates":{"latitude":"-64.9136","longitude":"-88.9860"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"lyubomil.fedik@example.com","login":{"uuid":"8e46745a-7337-4912-a179-dc1a1d6d244a","username":"happygorilla184","password":"messiah","salt":"bkDp8nQG","md5":"db17a1933635e0ef9a434aac62abdb10","sha1":"899a9cedad28219e6bfcddc47ca673092a63760e","sha256":"142afb7ab261e9d0d99841b11d2270403b1388b2d06df9cf579cdd8092abc11d"},"dob":{"date":"1951-08-12T21:45:01.397Z","age":72},"registered":{"date":"2005-05-07T19:13:15.067Z","age":18},"phone":"(068) G84-3389","cell":"(068) X86-0453","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/0.jpg","medium":"https://randomuser.me/api/portraits/med/men/0.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/0.jpg"},"nat":"UA"},{"gender":"female","name":{"title":"Mrs","first":"Leila","last":"Kothe"},"location":{"street":{"number":6954,"name":"Kirchstraße"},"city":"Bad Schandau","state":"Hessen","country":"Germany","postcode":27793,"coordinates":{"latitude":"64.5682","longitude":"-66.6864"},"timezone":{"offset":"+1:00","description":"Brussels, Copenhagen, Madrid, Paris"}},"email":"leila.kothe@example.com","login":{"uuid":"843e8628-55bb-4d3f-973b-cbcbcac848a2","username":"goldensnake919","password":"patton","salt":"1LTsAQJQ","md5":"7fc7ed25eed8e695864e01eb3fd7a2ad","sha1":"2048b52319a0224f091e3761125295ac55b802b2","sha256":"08831187439b23a1cc144b62cb780eeb42dbbc65a57d79c9c73748519787c4e1"},"dob":{"date":"1960-04-22T00:09:26.898Z","age":63},"registered":{"date":"2017-11-28T11:38:20.881Z","age":6},"phone":"0606-7676800","cell":"0173-7805882","id":{"name":"SVNR","value":"70 210460 K 931"},"picture":{"large":"https://randomuser.me/api/portraits/women/9.jpg","medium":"https://randomuser.me/api/portraits/med/women/9.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/9.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Miss","first":"Dalia","last":"Aguirre"},"location":{"street":{"number":5537,"name":"Peatonal del Río"},"city":"Rincón de López","state":"Sonora","country":"Mexico","postcode":49457,"coordinates":{"latitude":"-28.9892","longitude":"50.8396"},"timezone":{"offset":"+5:45","description":"Kathmandu"}},"email":"dalia.aguirre@example.com","login":{"uuid":"95f624ea-709d-42d1-a612-37a3d3f60d0c","username":"yellowsnake100","password":"star","salt":"gpUtTxSK","md5":"bf415c7beb16596232251fbe20cdac39","sha1":"3b36a1accdf1ae6c81a547c87872f5d7b9c2596e","sha256":"247726c25a3580ad752e64e482dd37e1cd8ebe4ecd746150c792aef981ff8c04"},"dob":{"date":"1967-08-09T06:43:36.030Z","age":56},"registered":{"date":"2011-02-15T18:26:20.673Z","age":12},"phone":"(632) 780 4066","cell":"(659) 761 2494","id":{"name":"NSS","value":"16 98 21 5385 8"},"picture":{"large":"https://randomuser.me/api/portraits/women/6.jpg","medium":"https://randomuser.me/api/portraits/med/women/6.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/6.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Mrs","first":"Mariska","last":"Anker"},"location":{"street":{"number":2844,"name":"Barbarossastraat"},"city":"'s-Heer Arendskerke","state":"Limburg","country":"Netherlands","postcode":"3432 WW","coordinates":{"latitude":"27.8837","longitude":"149.1055"},"timezone":{"offset":"+5:45","description":"Kathmandu"}},"email":"mariska.anker@example.com","login":{"uuid":"2b8ccc2a-6a5c-41a4-a059-69857d260588","username":"whiteostrich421","password":"konyor","salt":"7Qz1hWjO","md5":"298a19ac20c30b94b30511c19fd309d2","sha1":"b04e4fcb00854c422d5f21a70066e722ca129649","sha256":"624b993cbf23147d80e7fc81ed5433059efd95395c4723ed6403c66cdbbcfa57"},"dob":{"date":"1995-09-21T21:12:01.194Z","age":28},"registered":{"date":"2015-03-02T11:33:12.076Z","age":8},"phone":"(0511) 144955","cell":"(06) 86621362","id":{"name":"BSN","value":"50809332"},"picture":{"large":"https://randomuser.me/api/portraits/women/26.jpg","medium":"https://randomuser.me/api/portraits/med/women/26.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/26.jpg"},"nat":"NL"},{"gender":"male","name":{"title":"Mr","first":"Gökhan","last":"Fahri"},"location":{"street":{"number":6884,"name":"Talak Göktepe Cd"},"city":"Denizli","state":"Trabzon","country":"Turkey","postcode":13557,"coordinates":{"latitude":"45.7687","longitude":"93.2466"},"timezone":{"offset":"-1:00","description":"Azores, Cape Verde Islands"}},"email":"gokhan.fahri@example.com","login":{"uuid":"75b47100-a687-42f9-bffc-b51cbfe72000","username":"crazywolf119","password":"mary","salt":"rUqeMhil","md5":"8038d0238ce8a84e90d3f75d2ba66e36","sha1":"2f508dc8b302ceff42bbd171cec62d9cba3bccf1","sha256":"170ad20cfc133ed42e106498be05ad4ded31162313efab9332a5d193298bb69c"},"dob":{"date":"1949-11-29T07:52:07.562Z","age":74},"registered":{"date":"2021-02-02T19:37:24.553Z","age":2},"phone":"(385)-439-6452","cell":"(047)-271-9163","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/33.jpg","medium":"https://randomuser.me/api/portraits/med/men/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/33.jpg"},"nat":"TR"},{"gender":"male","name":{"title":"Mr","first":"Brad","last":"Henderson"},"location":{"street":{"number":6870,"name":"E Center St"},"city":"Toowoomba","state":"Victoria","country":"Australia","postcode":1799,"coordinates":{"latitude":"-0.1088","longitude":"-30.7806"},"timezone":{"offset":"+7:00","description":"Bangkok, Hanoi, Jakarta"}},"email":"brad.henderson@example.com","login":{"uuid":"9f734ca6-1eb8-4b60-a6cd-af5a94da732b","username":"ticklishcat156","password":"flyfish","salt":"pLbypT6F","md5":"c54aa8e767494d83cfbfd7a081f799ec","sha1":"2b37c1cc1c850053f0682824c9c81e0b4705edb9","sha256":"98547797460e3096e36fbcc7bea3c1e92a38c7258ecaa281b4a9f086770ee4bf"},"dob":{"date":"1998-10-05T15:29:38.987Z","age":25},"registered":{"date":"2016-02-15T02:17:36.528Z","age":7},"phone":"00-6694-3806","cell":"0453-741-335","id":{"name":"TFN","value":"995864825"},"picture":{"large":"https://randomuser.me/api/portraits/men/87.jpg","medium":"https://randomuser.me/api/portraits/med/men/87.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/87.jpg"},"nat":"AU"},{"gender":"female","name":{"title":"Miss","first":"فاطمه","last":"قاسمی"},"location":{"street":{"number":8355,"name":"شهید اکبر وصالی"},"city":"قائمشهر","state":"همدان","country":"Iran","postcode":55167,"coordinates":{"latitude":"-9.9206","longitude":"29.0292"},"timezone":{"offset":"0:00","description":"Western Europe Time, London, Lisbon, Casablanca"}},"email":"ftmh.qsmy@example.com","login":{"uuid":"adb3800a-dbde-415e-87cc-507f444d77c6","username":"organicgorilla663","password":"womble","salt":"XgryByNT","md5":"7f1eab0e9651b5d0400e3e64bcacb8ae","sha1":"5a9ecae4445533bf7ac4cb6670b3068ac80b0aa9","sha256":"8d1aa58b28a8979a9ada499f6f35676ed049335e2621bc407032db6c84bb64a5"},"dob":{"date":"1990-10-17T18:22:00.384Z","age":33},"registered":{"date":"2011-01-20T05:23:14.239Z","age":12},"phone":"065-53496816","cell":"0905-455-0900","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/7.jpg","medium":"https://randomuser.me/api/portraits/med/women/7.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/7.jpg"},"nat":"IR"},{"gender":"male","name":{"title":"Mr","first":"Onur","last":"Akşit"},"location":{"street":{"number":307,"name":"Bağdat Cd"},"city":"İzmir","state":"Bursa","country":"Turkey","postcode":17923,"coordinates":{"latitude":"56.9648","longitude":"122.5743"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"onur.aksit@example.com","login":{"uuid":"8f642935-74b7-4afe-b19e-e1968a5705ef","username":"lazywolf324","password":"laetitia","salt":"Fp8BFFif","md5":"efbd1756a9c3a0eb2bc3864f401fb2b8","sha1":"021becb695c8f16f6829f7470d59003f0d1ceccf","sha256":"7b1884d5a76cf578ea7c7fa1b41f8cba559f5b7f69669b401178444fd0783963"},"dob":{"date":"1983-04-20T16:02:02.695Z","age":40},"registered":{"date":"2007-11-09T20:32:41.028Z","age":16},"phone":"(686)-980-4726","cell":"(195)-851-6600","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/16.jpg","medium":"https://randomuser.me/api/portraits/med/men/16.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/16.jpg"},"nat":"TR"},{"gender":"female","name":{"title":"Miss","first":"Micaela","last":"Fuentes"},"location":{"street":{"number":2879,"name":"Continuación Azerbaiyán"},"city":"San Martín de las Pirámides","state":"Jalisco","country":"Mexico","postcode":51494,"coordinates":{"latitude":"9.8822","longitude":"-60.8453"},"timezone":{"offset":"-3:30","description":"Newfoundland"}},"email":"micaela.fuentes@example.com","login":{"uuid":"60e5ef9a-5671-4846-8835-76610d4b8b30","username":"purplepeacock666","password":"fredfred","salt":"UUxDX7QM","md5":"2d1a9ce1db672627008dd3906f8375f9","sha1":"8a228c533354a950d2a92753b8632c431f23cb9c","sha256":"8baeab56b77822e26c180dbf4228907507a092c38ade0dbc7e6661c6cc1a1891"},"dob":{"date":"1954-03-09T17:21:41.992Z","age":69},"registered":{"date":"2004-08-14T10:38:06.306Z","age":19},"phone":"(659) 586 6624","cell":"(689) 752 1627","id":{"name":"NSS","value":"08 35 75 7003 9"},"picture":{"large":"https://randomuser.me/api/portraits/women/34.jpg","medium":"https://randomuser.me/api/portraits/med/women/34.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/34.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Ms","first":"Olivia","last":"Huhtala"},"location":{"street":{"number":3850,"name":"Verkatehtaankatu"},"city":"Kuusamo","state":"Finland Proper","country":"Finland","postcode":58388,"coordinates":{"latitude":"-86.9495","longitude":"-82.7241"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"olivia.huhtala@example.com","login":{"uuid":"41b6fdc9-891c-482a-b8fc-c0d61063c2b3","username":"yellowrabbit974","password":"1943","salt":"wXgar067","md5":"49f712d086b5a7d710ef1d3a3208b568","sha1":"9b03c5fd05b443cf0a0137c21c1e9c746cdb4327","sha256":"de5b9c01d488b0dd37ce390b3b7f6940bc364a10b4009d7bd42b07a04af50e6c"},"dob":{"date":"1960-06-03T23:56:05.961Z","age":63},"registered":{"date":"2003-05-09T07:45:44.704Z","age":20},"phone":"07-266-214","cell":"042-905-91-17","id":{"name":"HETU","value":"NaNNA376undefined"},"picture":{"large":"https://randomuser.me/api/portraits/women/60.jpg","medium":"https://randomuser.me/api/portraits/med/women/60.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/60.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Caspian","last":"Lygre"},"location":{"street":{"number":6040,"name":"Ekraveien"},"city":"Fanahammeren","state":"Nord-Trøndelag","country":"Norway","postcode":"2604","coordinates":{"latitude":"-31.0324","longitude":"-125.6842"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"caspian.lygre@example.com","login":{"uuid":"3f4e8e4b-1258-477f-bbe6-483b570b895b","username":"yellowsnake126","password":"howard","salt":"CZ8QTtBT","md5":"9ee148ca5be21c98f3e905b4219af3e0","sha1":"4396c00a291b46862a862fe92c5c61115b42f4d9","sha256":"7c6062bd33346c6338fc645e29c3e98b49ab39396cdb954c8af22b10d058f519"},"dob":{"date":"1945-05-04T12:30:56.642Z","age":78},"registered":{"date":"2016-06-15T00:36:38.039Z","age":7},"phone":"72127863","cell":"49627284","id":{"name":"FN","value":"04054516938"},"picture":{"large":"https://randomuser.me/api/portraits/men/81.jpg","medium":"https://randomuser.me/api/portraits/med/men/81.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/81.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Witold","last":"Hölzer"},"location":{"street":{"number":9188,"name":"Danziger Straße"},"city":"Lichtenberg","state":"Bayern","country":"Germany","postcode":41182,"coordinates":{"latitude":"-26.1913","longitude":"-55.8368"},"timezone":{"offset":"+8:00","description":"Beijing, Perth, Singapore, Hong Kong"}},"email":"witold.holzer@example.com","login":{"uuid":"8773eaee-52ba-4d6f-ac34-9d704f9b47af","username":"redelephant934","password":"ghost1","salt":"SlozwEyg","md5":"4535414a6bb2049f16bf95577186ad72","sha1":"df05a8188e71a728571ff71cfbab5a2c1e772468","sha256":"b928910faded1f248795923bc131c05d027be8d8b11b2d62f771c26a59c5fd60"},"dob":{"date":"1953-07-16T16:28:54.435Z","age":70},"registered":{"date":"2013-09-12T03:58:04.555Z","age":10},"phone":"0842-1301330","cell":"0173-0769812","id":{"name":"SVNR","value":"28 160753 H 482"},"picture":{"large":"https://randomuser.me/api/portraits/men/19.jpg","medium":"https://randomuser.me/api/portraits/med/men/19.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/19.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Hector","last":"Elliott"},"location":{"street":{"number":4451,"name":"Prospect Rd"},"city":"Rancho Cucamonga","state":"New Jersey","country":"United States","postcode":92543,"coordinates":{"latitude":"-51.9951","longitude":"-104.0428"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"hector.elliott@example.com","login":{"uuid":"a75bc426-60db-4ccd-b067-3238c9eec576","username":"bigtiger655","password":"jewels","salt":"th2wUHLH","md5":"94ed72e286f7b64c9527744aa79b2738","sha1":"26437780792905ed61fcfecf556de3c5ab4ff996","sha256":"94111f3be800e0253c6cdb882b5f182dc375942419e5703ed9d0cffe306f832b"},"dob":{"date":"1958-01-11T23:37:31.346Z","age":65},"registered":{"date":"2005-02-05T22:38:08.640Z","age":18},"phone":"(455) 221-6396","cell":"(376) 777-7803","id":{"name":"SSN","value":"534-09-8281"},"picture":{"large":"https://randomuser.me/api/portraits/men/65.jpg","medium":"https://randomuser.me/api/portraits/med/men/65.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/65.jpg"},"nat":"US"},{"gender":"female","name":{"title":"Miss","first":"Tiffany","last":"Lane"},"location":{"street":{"number":2962,"name":"Prospect Rd"},"city":"Thornton","state":"Kentucky","country":"United States","postcode":60966,"coordinates":{"latitude":"-1.9529","longitude":"48.4136"},"timezone":{"offset":"-11:00","description":"Midway Island, Samoa"}},"email":"tiffany.lane@example.com","login":{"uuid":"7eab6b7d-3a38-4130-b833-c7c756575e67","username":"blackfrog364","password":"murphy","salt":"kdrsD66A","md5":"33651f1b4c844fd0e365c29307cd0405","sha1":"e57ecbae21110dee738908713b33ff535d3eb6f6","sha256":"06f3c086c29f234d9b495c6d0674b38107b605ed2ac4cd6b9998f57ac64ca1ee"},"dob":{"date":"1945-05-27T04:16:51.254Z","age":78},"registered":{"date":"2008-07-05T23:37:32.725Z","age":15},"phone":"(925) 342-5351","cell":"(704) 819-4202","id":{"name":"SSN","value":"055-35-7695"},"picture":{"large":"https://randomuser.me/api/portraits/women/82.jpg","medium":"https://randomuser.me/api/portraits/med/women/82.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/82.jpg"},"nat":"US"},{"gender":"male","name":{"title":"Mr","first":"Noah","last":"Cooper"},"location":{"street":{"number":3029,"name":"North Street"},"city":"Porirua","state":"West Coast","country":"New Zealand","postcode":37238,"coordinates":{"latitude":"40.5244","longitude":"-24.6521"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"noah.cooper@example.com","login":{"uuid":"bc421a1d-682d-48f5-b0d4-01105f6abbd7","username":"ticklishleopard117","password":"1028","salt":"JeeIB7Xa","md5":"5d4431385fb96fba8e1ece1a849f6faf","sha1":"9ecad63cc4b752f79479c77ef327580f35c99ee4","sha256":"826c8493dafdfc3b5a0ea9eeacb7e5a1ee91a95596722e78045b70c54fcccde1"},"dob":{"date":"1945-05-30T22:56:08.773Z","age":78},"registered":{"date":"2020-09-10T11:59:50.004Z","age":3},"phone":"(599)-373-3732","cell":"(493)-996-8090","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/89.jpg","medium":"https://randomuser.me/api/portraits/med/men/89.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/89.jpg"},"nat":"NZ"},{"gender":"female","name":{"title":"Ms","first":"Ronja","last":"Zwick"},"location":{"street":{"number":2167,"name":"Mozartstraße"},"city":"Weingarten","state":"Niedersachsen","country":"Germany","postcode":37772,"coordinates":{"latitude":"-83.8341","longitude":"107.9210"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"ronja.zwick@example.com","login":{"uuid":"b50bf0ef-0c60-4c3e-962b-79b35e6693a4","username":"angryostrich820","password":"fishhead","salt":"vTztmktx","md5":"e06211a552709ae5a3e0bbbfdfcb18f4","sha1":"4e4bb8369e615063ca6b4f70a2d9d803e3e3b762","sha256":"27a72b58deb73824d100e912ccaa11df2faaca5773d0f8515b91730f7e128ccb"},"dob":{"date":"1998-11-08T13:10:11.136Z","age":25},"registered":{"date":"2007-11-08T19:35:13.916Z","age":16},"phone":"0503-8381668","cell":"0176-9824228","id":{"name":"SVNR","value":"43 081198 Z 720"},"picture":{"large":"https://randomuser.me/api/portraits/women/31.jpg","medium":"https://randomuser.me/api/portraits/med/women/31.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/31.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Roy","last":"Bellmann"},"location":{"street":{"number":2380,"name":"Fliederweg"},"city":"Spremberg","state":"Berlin","country":"Germany","postcode":39424,"coordinates":{"latitude":"73.5684","longitude":"37.9668"},"timezone":{"offset":"+3:00","description":"Baghdad, Riyadh, Moscow, St. Petersburg"}},"email":"roy.bellmann@example.com","login":{"uuid":"5cc4894e-2fdc-4f93-8753-d35b32fedcb3","username":"orangeduck712","password":"honey","salt":"iOdEgEkf","md5":"c9d4737ef69c40aff092d442778d89a9","sha1":"17f326672579d9f17c1cf437f4b848fd99a71d3b","sha256":"fa981fff6dc26cd4a5093811723f65fbab65024bd2d5f811b3f1036e0906cc36"},"dob":{"date":"1991-11-09T01:38:14.001Z","age":32},"registered":{"date":"2010-11-25T11:31:00.096Z","age":13},"phone":"0268-8655054","cell":"0179-1884914","id":{"name":"SVNR","value":"23 081191 B 255"},"picture":{"large":"https://randomuser.me/api/portraits/men/2.jpg","medium":"https://randomuser.me/api/portraits/med/men/2.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/2.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Franz Josef","last":"Hipp"},"location":{"street":{"number":7613,"name":"Wiesenweg"},"city":"Schönberg","state":"Baden-Württemberg","country":"Germany","postcode":68468,"coordinates":{"latitude":"37.9045","longitude":"-70.6482"},"timezone":{"offset":"+3:30","description":"Tehran"}},"email":"franzjosef.hipp@example.com","login":{"uuid":"5f84ddbb-b4ef-4330-bbfd-352ba0c06a03","username":"happyzebra922","password":"courage","salt":"aGJBUtmN","md5":"b2579923145a3abfa82bcf8df523fb35","sha1":"abb291df7eec3ba24782ac3c2037552b084e8f1d","sha256":"6f6b2b2c29bd8c9551abf9b1f3403d7f8bc895595e8ff532ff556790565f2907"},"dob":{"date":"1964-08-05T09:39:04.663Z","age":59},"registered":{"date":"2016-02-11T14:44:35.541Z","age":7},"phone":"0634-7198976","cell":"0172-3467003","id":{"name":"SVNR","value":"04 050864 H 374"},"picture":{"large":"https://randomuser.me/api/portraits/men/17.jpg","medium":"https://randomuser.me/api/portraits/med/men/17.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/17.jpg"},"nat":"DE"},{"gender":"male","name":{"title":"Mr","first":"Pompeu","last":"da Rosa"},"location":{"street":{"number":4080,"name":"Rua Bela Vista "},"city":"Olinda","state":"Santa Catarina","country":"Brazil","postcode":44704,"coordinates":{"latitude":"-83.0079","longitude":"97.4731"},"timezone":{"offset":"-8:00","description":"Pacific Time (US & Canada)"}},"email":"pompeu.darosa@example.com","login":{"uuid":"e9270c3a-f5c4-4e3c-9adf-ceb18c7e2932","username":"ticklishpanda748","password":"high","salt":"ROGRGEy8","md5":"c4eb75f4cbecc81bcf634af4bea91449","sha1":"563c83440feaa9e12d6f8bcc6174a9e505879ad0","sha256":"5c78e2a6d1bfac666dc35bcf337f4be8fab68c2ed0fc505c33b681d54fddb9ef"},"dob":{"date":"1964-06-25T13:12:26.858Z","age":59},"registered":{"date":"2014-09-22T18:20:59.820Z","age":9},"phone":"(46) 7024-9565","cell":"(78) 4654-1411","id":{"name":"CPF","value":"852.573.420-50"},"picture":{"large":"https://randomuser.me/api/portraits/men/51.jpg","medium":"https://randomuser.me/api/portraits/med/men/51.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/51.jpg"},"nat":"BR"},{"gender":"female","name":{"title":"Mrs","first":"Madison","last":"Smith"},"location":{"street":{"number":8483,"name":"Anzac Drive"},"city":"Hastings","state":"Hawke'S Bay","country":"New Zealand","postcode":77412,"coordinates":{"latitude":"-6.2890","longitude":"19.3206"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"madison.smith@example.com","login":{"uuid":"249889db-3628-4fff-ad12-85c13d8293af","username":"orangeduck111","password":"christopher","salt":"GEM0E9S5","md5":"33cd46d20241f76ba34950be8edde393","sha1":"f9eb10a3e33c4b612241ff5c7eab4c16e6e5dd3f","sha256":"fcaadc8d1393c3561b8ff9d879f9535daf86eb3c2abe3e3f642024709571d0ac"},"dob":{"date":"1972-09-27T09:14:03.665Z","age":51},"registered":{"date":"2003-06-08T01:18:41.302Z","age":20},"phone":"(918)-506-6179","cell":"(235)-188-1006","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/women/84.jpg","medium":"https://randomuser.me/api/portraits/med/women/84.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/84.jpg"},"nat":"NZ"},{"gender":"female","name":{"title":"Ms","first":"Nella","last":"Sippola"},"location":{"street":{"number":1471,"name":"Tahmelantie"},"city":"Iitti","state":"Southern Ostrobothnia","country":"Finland","postcode":26290,"coordinates":{"latitude":"-54.0876","longitude":"110.4614"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"nella.sippola@example.com","login":{"uuid":"85191505-ce78-4f07-9bdc-baac73641bd0","username":"angryrabbit443","password":"soccer1","salt":"UL0b7Gst","md5":"ea9c3230ad480e5a0f2aae50669d80b7","sha1":"b949a5ef6b276dcd1b660e8d79fff2051e7fd81f","sha256":"ff9214f393389de63ea59ea4b24b87b21c6e5c10aa73fee87e3d67adc213a073"},"dob":{"date":"1978-10-12T15:58:35.412Z","age":45},"registered":{"date":"2004-07-16T14:29:49.515Z","age":19},"phone":"07-647-883","cell":"049-904-42-20","id":{"name":"HETU","value":"NaNNA426undefined"},"picture":{"large":"https://randomuser.me/api/portraits/women/38.jpg","medium":"https://randomuser.me/api/portraits/med/women/38.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/38.jpg"},"nat":"FI"},{"gender":"female","name":{"title":"Mrs","first":"Hiltrud","last":"Wacker"},"location":{"street":{"number":6244,"name":"Schillerstraße"},"city":"Lauterbach","state":"Mecklenburg-Vorpommern","country":"Germany","postcode":46715,"coordinates":{"latitude":"-34.1538","longitude":"135.9143"},"timezone":{"offset":"-3:00","description":"Brazil, Buenos Aires, Georgetown"}},"email":"hiltrud.wacker@example.com","login":{"uuid":"c357885b-ae96-4aa3-b1dd-32c4486a373c","username":"bigkoala818","password":"gideon","salt":"XXRf9QUG","md5":"543e2578c4329fbecdc1d0f18d9929f6","sha1":"905cf256f00393f0e5d7a4644ddda4edba49ec16","sha256":"b06778588e52d9a32c07216d1e2abbb403558d3e2b963dfc774ec2c84a452936"},"dob":{"date":"1951-07-01T03:26:30.692Z","age":72},"registered":{"date":"2011-04-09T09:17:44.746Z","age":12},"phone":"0368-3531963","cell":"0173-4555583","id":{"name":"SVNR","value":"44 300651 W 736"},"picture":{"large":"https://randomuser.me/api/portraits/women/51.jpg","medium":"https://randomuser.me/api/portraits/med/women/51.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/51.jpg"},"nat":"DE"},{"gender":"female","name":{"title":"Miss","first":"Tessa","last":"Moulin"},"location":{"street":{"number":5920,"name":"Rue Jean-Baldassini"},"city":"Poitiers","state":"Hérault","country":"France","postcode":61236,"coordinates":{"latitude":"-84.6413","longitude":"98.6028"},"timezone":{"offset":"+5:00","description":"Ekaterinburg, Islamabad, Karachi, Tashkent"}},"email":"tessa.moulin@example.com","login":{"uuid":"42055c97-a443-4687-a47a-40655f99e964","username":"organicdog604","password":"beau","salt":"RiPzKZsq","md5":"d68e2234d53548903f1013f31b251e3a","sha1":"309feb068bec59a31b833da98a71ff1d6023b004","sha256":"820330eb5a59d0064aa49a3a94fa0029887bd722594af6b9afa2bb61285fb595"},"dob":{"date":"1979-04-04T05:05:48.090Z","age":44},"registered":{"date":"2004-10-10T12:12:17.151Z","age":19},"phone":"02-16-83-84-18","cell":"06-10-54-45-86","id":{"name":"INSEE","value":"2790365974405 05"},"picture":{"large":"https://randomuser.me/api/portraits/women/35.jpg","medium":"https://randomuser.me/api/portraits/med/women/35.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/35.jpg"},"nat":"FR"},{"gender":"male","name":{"title":"Mr","first":"Kasper","last":"Sørensen"},"location":{"street":{"number":3426,"name":"Algade"},"city":"Roslev","state":"Sjælland","country":"Denmark","postcode":65135,"coordinates":{"latitude":"-7.5831","longitude":"69.4759"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"kasper.sorensen@example.com","login":{"uuid":"8d9836c8-fa6b-43ed-9fb9-1610bfa78e4b","username":"blackmeercat758","password":"bangkok","salt":"G9o4HGJV","md5":"0dc56ae0490e87bcf9480307023aa1b3","sha1":"e3bdda120ef334936340b773632f9663cdeb426e","sha256":"6d5fb21aeeaab858a97d74034bade872303c294870e5e86dc119883193d5fd96"},"dob":{"date":"1989-03-09T10:54:01.206Z","age":34},"registered":{"date":"2018-08-15T00:27:27.274Z","age":5},"phone":"34782329","cell":"35366855","id":{"name":"CPR","value":"090389-5169"},"picture":{"large":"https://randomuser.me/api/portraits/men/6.jpg","medium":"https://randomuser.me/api/portraits/med/men/6.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/6.jpg"},"nat":"DK"},{"gender":"female","name":{"title":"Mademoiselle","first":"Dolores","last":"Roux"},"location":{"street":{"number":3029,"name":"Esplanade du 9 Novembre 1989"},"city":"Oberbipp","state":"Zug","country":"Switzerland","postcode":1026,"coordinates":{"latitude":"-21.2313","longitude":"-178.0907"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"dolores.roux@example.com","login":{"uuid":"f7a00f4d-148d-4c5b-b9f7-6a3a4923e9ec","username":"silverwolf356","password":"valley","salt":"NjWdlkuH","md5":"3e43be36ec50cd0cd2b1d6f32b10b961","sha1":"26595c4fbacb23c5ee3483468258b8831e5131ca","sha256":"153a42a038dadba74655761917fb66a1f9a78a273e4d1a23f1a499757a4ab671"},"dob":{"date":"2000-12-03T14:39:56.310Z","age":23},"registered":{"date":"2006-07-01T12:54:53.658Z","age":17},"phone":"079 864 66 62","cell":"076 138 58 51","id":{"name":"AVS","value":"756.5234.2501.54"},"picture":{"large":"https://randomuser.me/api/portraits/women/83.jpg","medium":"https://randomuser.me/api/portraits/med/women/83.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/83.jpg"},"nat":"CH"},{"gender":"male","name":{"title":"Mr","first":"Mariano","last":"Calvo"},"location":{"street":{"number":1207,"name":"Calle de Ferraz"},"city":"Bilbao","state":"Cataluña","country":"Spain","postcode":94940,"coordinates":{"latitude":"35.2929","longitude":"-62.4286"},"timezone":{"offset":"0:00","description":"Western Europe Time, London, Lisbon, Casablanca"}},"email":"mariano.calvo@example.com","login":{"uuid":"45c0367c-9450-4ac8-a45e-7c3a0a2fbd67","username":"orangedog966","password":"audia4","salt":"tBg7lbm3","md5":"b2368b79b8184ea8db8075ca3fe4d9ea","sha1":"14f0c9f5c9afaa59ec5fa1b11664cb6179fd6183","sha256":"c5616c0c725b907c4b292e6a661e9e248a7107bf37cbbd9715bbc26eed6c7e0b"},"dob":{"date":"1954-05-13T20:59:41.819Z","age":69},"registered":{"date":"2004-01-21T16:08:33.159Z","age":19},"phone":"903-804-540","cell":"673-869-004","id":{"name":"DNI","value":"93211130-N"},"picture":{"large":"https://randomuser.me/api/portraits/men/77.jpg","medium":"https://randomuser.me/api/portraits/med/men/77.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/77.jpg"},"nat":"ES"},{"gender":"male","name":{"title":"Mr","first":"Samu","last":"Luoma"},"location":{"street":{"number":5167,"name":"Nordenskiöldinkatu"},"city":"Harjavalta","state":"Päijät-Häme","country":"Finland","postcode":75519,"coordinates":{"latitude":"25.2289","longitude":"-10.1298"},"timezone":{"offset":"+2:00","description":"Kaliningrad, South Africa"}},"email":"samu.luoma@example.com","login":{"uuid":"b80153c3-12d2-454d-8393-4eba9cb6315c","username":"happypeacock596","password":"googoo","salt":"vTg9n199","md5":"ed3a5f35f0dbd9e524123836a28649a5","sha1":"4a816ad1c851576019476095f532cbfd02396465","sha256":"8413723935ec4ee4336170fe495fd338d3a80a0c3c48c30da3075bc55449aa86"},"dob":{"date":"1982-06-20T20:13:38.383Z","age":41},"registered":{"date":"2010-12-31T19:58:14.972Z","age":12},"phone":"05-845-856","cell":"046-654-06-86","id":{"name":"HETU","value":"NaNNA545undefined"},"picture":{"large":"https://randomuser.me/api/portraits/men/17.jpg","medium":"https://randomuser.me/api/portraits/med/men/17.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/17.jpg"},"nat":"FI"},{"gender":"male","name":{"title":"Mr","first":"Edmund","last":"Blom"},"location":{"street":{"number":3121,"name":"Neuberggata"},"city":"Steinshamn","state":"Vestfold","country":"Norway","postcode":"2636","coordinates":{"latitude":"20.5814","longitude":"-146.2720"},"timezone":{"offset":"-10:00","description":"Hawaii"}},"email":"edmund.blom@example.com","login":{"uuid":"4765ef77-f5e2-4b4a-8e16-7b88f6d1f89e","username":"yellowcat306","password":"cornell","salt":"gbOJyS44","md5":"6ad236c2e74def23e320c69e8b2c39d3","sha1":"fdad75af39a5503966404da861989be895928b44","sha256":"237ca35d5f4d46e43ef19d456d9d2b6182d914248fd36b3c836f12c4c5d1c914"},"dob":{"date":"1965-03-05T11:11:20.817Z","age":58},"registered":{"date":"2015-07-04T10:32:41.208Z","age":8},"phone":"74835566","cell":"47142990","id":{"name":"FN","value":"05036549574"},"picture":{"large":"https://randomuser.me/api/portraits/men/23.jpg","medium":"https://randomuser.me/api/portraits/med/men/23.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/23.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Silas","last":"Nascimento"},"location":{"street":{"number":6157,"name":"Rua Dois"},"city":"Jequié","state":"Mato Grosso do Sul","country":"Brazil","postcode":84125,"coordinates":{"latitude":"19.8478","longitude":"101.3384"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"silas.nascimento@example.com","login":{"uuid":"a3e2b5f1-0488-459c-8f0d-1cdda30a3e0f","username":"bluecat583","password":"jezebel","salt":"E4n3ibdS","md5":"f52db3025a09ebb6ffccce875ea584bf","sha1":"bec30e1fd1c45aa34a7a4c030c7f9954e0f712e5","sha256":"275b06da9e8e0c28c03a23d23599228243584fc357091432b430302eefa3384e"},"dob":{"date":"1976-06-29T23:04:50.585Z","age":47},"registered":{"date":"2005-07-19T13:57:33.924Z","age":18},"phone":"(18) 2055-0959","cell":"(54) 5969-6548","id":{"name":"CPF","value":"636.952.345-21"},"picture":{"large":"https://randomuser.me/api/portraits/men/23.jpg","medium":"https://randomuser.me/api/portraits/med/men/23.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/23.jpg"},"nat":"BR"},{"gender":"male","name":{"title":"Mr","first":"Tobias","last":"Bentsen"},"location":{"street":{"number":8129,"name":"Jerpefaret"},"city":"Bud","state":"Akershus","country":"Norway","postcode":"6002","coordinates":{"latitude":"-41.4056","longitude":"2.6320"},"timezone":{"offset":"+11:00","description":"Magadan, Solomon Islands, New Caledonia"}},"email":"tobias.bentsen@example.com","login":{"uuid":"8961becc-9092-47a0-9182-472163dd0b70","username":"goldenfrog235","password":"rock","salt":"AdJ5uGBj","md5":"151e28e789a999fc0d85fe2e738bb6a1","sha1":"f3f5cf5d38c8e49f0a108aad6b91e9cb96e55ed8","sha256":"a2f9a5d583e3917f4d476181a8892b7c946514ddb41f89374eb8d7eecf6115f4"},"dob":{"date":"1947-07-29T08:50:57.716Z","age":76},"registered":{"date":"2016-06-13T16:38:41.677Z","age":7},"phone":"61765233","cell":"44269538","id":{"name":"FN","value":"29074718998"},"picture":{"large":"https://randomuser.me/api/portraits/men/26.jpg","medium":"https://randomuser.me/api/portraits/med/men/26.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/26.jpg"},"nat":"NO"},{"gender":"male","name":{"title":"Mr","first":"Budivoy","last":"Lozina-Lozinskiy"},"location":{"street":{"number":2504,"name":"Senomanskiy provulok"},"city":"Lanivci","state":"Rivnenska","country":"Ukraine","postcode":60421,"coordinates":{"latitude":"-23.9250","longitude":"126.4335"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"budivoy.lozina-lozinskiy@example.com","login":{"uuid":"555166bf-eeda-4501-88fd-ce3e257d1d20","username":"whitefrog195","password":"gary","salt":"bmwQxhJz","md5":"8c2d79986df6fe99e6639afc21f954d9","sha1":"30d42dc4af57fd0430b3f8e5eeb51b5586f20193","sha256":"49cc0b805f3f24b2d55e9e60f69c6bf2dbc8c4404ca73b0ef5891b78356587e5"},"dob":{"date":"1953-09-07T06:05:27.044Z","age":70},"registered":{"date":"2021-03-21T16:09:48.014Z","age":2},"phone":"(097) X22-5199","cell":"(099) L51-9141","id":{"name":"","value":null},"picture":{"large":"https://randomuser.me/api/portraits/men/84.jpg","medium":"https://randomuser.me/api/portraits/med/men/84.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/84.jpg"},"nat":"UA"},{"gender":"male","name":{"title":"Mr","first":"Marcos","last":"Escobar"},"location":{"street":{"number":4037,"name":"Cerrada Sur Rico"},"city":"Buena Vista","state":"Estado de Mexico","country":"Mexico","postcode":37916,"coordinates":{"latitude":"73.3155","longitude":"35.7779"},"timezone":{"offset":"-2:00","description":"Mid-Atlantic"}},"email":"marcos.escobar@example.com","login":{"uuid":"c3628040-fe16-4017-9740-a0624ed51284","username":"whitebird465","password":"chewbacc","salt":"DiqoN6lV","md5":"4ca3524cd199f70f1abc20a6de680666","sha1":"7515b8cd567fba2749c5057573cfc9a2f1a1e323","sha256":"74b3552596baa55ef0de00ac821ad89047a50e617729818aac75e524a450fc99"},"dob":{"date":"1980-11-08T18:46:45.241Z","age":43},"registered":{"date":"2008-10-18T16:41:15.847Z","age":15},"phone":"(653) 080 9052","cell":"(681) 655 7098","id":{"name":"NSS","value":"09 18 15 9563 7"},"picture":{"large":"https://randomuser.me/api/portraits/men/33.jpg","medium":"https://randomuser.me/api/portraits/med/men/33.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/33.jpg"},"nat":"MX"},{"gender":"female","name":{"title":"Ms","first":"Juliette","last":"Scott"},"location":{"street":{"number":8986,"name":"Concession Road 23"},"city":"Aylmer","state":"Ontario","country":"Canada","postcode":"T7C 5J6","coordinates":{"latitude":"52.6519","longitude":"37.2227"},"timezone":{"offset":"+10:00","description":"Eastern Australia, Guam, Vladivostok"}},"email":"juliette.scott@example.com","login":{"uuid":"5df1e767-6777-4918-be91-1006abe4fd66","username":"greenleopard929","password":"duchess","salt":"WaB2jKUt","md5":"df9194299c4d27063889fda133d7e0e7","sha1":"45f172d62b4dd1ba5301aa808f3793e7410193bc","sha256":"f54d22365b7759f392c9ac68f4eb7c20a04ba4dbc410cad3196d794b388590ca"},"dob":{"date":"1998-02-11T12:29:58.725Z","age":25},"registered":{"date":"2007-10-27T22:54:13.594Z","age":16},"phone":"L19 J59-4967","cell":"T09 G52-6223","id":{"name":"SIN","value":"224382119"},"picture":{"large":"https://randomuser.me/api/portraits/women/72.jpg","medium":"https://randomuser.me/api/portraits/med/women/72.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/women/72.jpg"},"nat":"CA"},{"gender":"male","name":{"title":"Monsieur","first":"Alvaro","last":"Fabre"},"location":{"street":{"number":228,"name":"Rue de L'Abbaye"},"city":"Cuarny","state":"Basel-Landschaft","country":"Switzerland","postcode":1047,"coordinates":{"latitude":"4.5911","longitude":"-157.8054"},"timezone":{"offset":"-9:00","description":"Alaska"}},"email":"alvaro.fabre@example.com","login":{"uuid":"2ffc5f11-bc33-4acc-ba1f-9e42f468a3f3","username":"smallleopard905","password":"guang","salt":"FUcJ4LSv","md5":"4ee9515e7555bac7cbb570b2cc67ef8d","sha1":"e2d584c3fc2310a7bb12feb77b20b04860e1c4c5","sha256":"87ab98b008e82b930a2a1b07f08ad4a6875c787f7aa9feae548c8b89b851d8ed"},"dob":{"date":"1956-12-05T23:13:01.592Z","age":67},"registered":{"date":"2013-07-04T05:04:46.347Z","age":10},"phone":"079 464 97 27","cell":"076 145 66 01","id":{"name":"AVS","value":"756.0053.2622.89"},"picture":{"large":"https://randomuser.me/api/portraits/men/3.jpg","medium":"https://randomuser.me/api/portraits/med/men/3.jpg","thumbnail":"https://randomuser.me/api/portraits/thumb/men/3.jpg"},"nat":"CH"}],"info":{"seed":"de743e7ce76c948e","results":100,"page":1,"version":"1.4"}}
You can use jawk
like:
jawk \
--split-by .results \
--filter '(and (> .dob.age 40) (<= .dob.age 70))' \
-o csv \
--select '.name.first = First name' \
--select '.name.last = Last name' \
--select '.dob.age = Age' \
--order-by .name.last
To produce:
"First name", "Last name", "Age"
"Dalia", "Aguirre", 56
"Ramon", "Bailey", 51
"Begüm", "Bakırcıoğlu", 57
"Gabriel", "Balderas", 58
"Pranav", "Bansal", 46
"Edmund", "Blom", 58
"Emre", "Bolatlı", 59
"Martin", "Burton", 68
"Caroline", "Caldwell", 61
"Mariano", "Calvo", 69
"Jesús", "Diez", 51
"Héloïse", "Dufour", 60
"Hector", "Elliott", 65
"Tilde", "Engebakken", 44
"Marcos", "Escobar", 43
"Nuray", "Ewert", 58
"Alvaro", "Fabre", 67
"Micaela", "Fuentes", 69
"Morris", "Gillissen", 47
"Tilla", "Hagland", 46
"Anna", "Hansen", 59
"Hailey", "Harcourt", 42
"Javier", "Harvey", 43
"Troy", "Harvey", 43
"Franz Josef", "Hipp", 59
"Olivia", "Huhtala", 63
"Witold", "Hölzer", 70
"Albert", "Jensen", 42
"Vishrutha", "Kamath", 48
"Siegried", "Kirsten", 51
"Leila", "Kothe", 63
"Zdravko", "Lazović", 59
"Diane", "Leroux", 45
"Gabrielle", "Li", 52
"Charles", "Lorenz", 63
"Patrice", "Louis", 49
"Budivoy", "Lozina-Lozinskiy", 70
"Samu", "Luoma", 41
"Eva", "Lévesque", 61
"Rich", "Meehan", 66
"Mélina", "Moreau", 54
"Kenzo", "Morin", 58
"Freja", "Mortensen", 63
"Tessa", "Moulin", 44
"Silas", "Nascimento", 47
"Tim", "Olivier", 55
"Celia", "Rodríguez", 46
"Lola", "Simmmons", 62
"Nelson", "Simpson", 52
"Nella", "Sippola", 45
"Madison", "Smith", 51
"Lea", "Sørensen", 67
"Taylor", "Thompson", 48
"Dragica", "Tomić", 56
"Peppi", "Toro", 49
"Esparta", "Ulloa", 58
"Medina", "Vincent", 58
"Pompeu", "da Rosa", 59
"یسنا", "صدر", 51
"پرهام", "پارسا", 65
Use functional function
In this example we will see how to use functional function.
If your input looks like
1
5
7
-6
You can use jawk
like:
jawk \
-o csv \
--select '.=number' \
--select '(fold (.range) 1 (* (+ 1 .index) .so_far))=factorial'
To produce:
"number", "factorial"
1, 1
5, 120
7, 5040
-6,
Filter out primitive values
In this example we will see how to filter out primitive values.
If your input looks like
{"key": "value"}
100
"test"
[1, 2, 3, 4]
false
null
You can use jawk
like:
jawk \
--only-objects-and-arrays
To produce:
{"key": "value"}
[1, 2, 3, 4]