If I run:
cat <file> | jq
I get:
{
"user": "alex",
"num": "486",
"time": "Thu Jun 6 16:26:06 PDT 2019",
"pwd": "/Users/alex/codes/ores/prompt-command",
"pid": 11047,
"exit_code": 0,
"cmd": "echo '123'"
}
{
"user": "john",
"num": "487",
"time": "Thu Jun 6 16:26:24 PDT 2019",
"pwd": "/Users/alex/codes/ores/prompt-command",
"pid": 11108,
"exit_code": 5,
"cmd": "echo '456'"
}
{
"user": "alex",
"num": "488",
"time": "Thu Jun 6 16:26:59 PDT 2019",
"pwd": "/Users/alex/codes/ores/prompt-command",
"pid": 11141,
"exit_code": 5,
"cmd": "echo '789'"
}
but instead of all those fields, I just want some output like:
alex echo '123'
alex echo '789'
so I tried this:
cat <file> | jq -r '.user .cmd'
but that didn't work I got this error:
jq: error (at :63): Cannot index string with string "cmd"
I also want to filter it so I only see my commands, something like:
cat <file> | jq -r '.user=alex .cmd'