jq print character inside output

前端 未结 3 1743
余生分开走
余生分开走 2021-01-22 12:11

I want print \"/\" separator inside output title.

curl  -s http://cd0a4a.ethosdistro.com/?json=yes \\
    | jq -c \'.rigs|.\"0d6b27\",.\"50dc35\"|[.         


        
3条回答
  •  遥遥无期
    2021-01-22 12:44

    You're doing a lot of unnecessary calls just to process the data. Your commands could be drastically simplified.

    • You don't need to explicitly key into the .rigs object to get their values, you could just access them using [].
    • You don't need the sed call to strip the quotes, just use the raw output -r.
    • You don't need the awk call to add the header, you could just output an additional row from jq.

    So your command turns into this instead:

    $ curl -s http://cd0a4a.ethosdistro.com/?json=yes \
    | jq -r '["version", "GPU_driver", "miner", "gpu"],
             (.rigs[] | [.version, .driver, .miner, "\(.gpus)/\(.miner_instance)"])
                 | @csv' \
    | csvlook -I
    

提交回复
热议问题