Invalid JSON: Unexpected token '#', " #!/bin/bas"... is not valid JSON
| #!/bin/bash | |
| run coinbash.sh | |
| # - Bash Script | |
| # - CLI | |
| # - A bash script (CLI) for displaying crypto currencies market data in a terminal | |
| # - Tested on Debian and Ubuntu | |
| # - Dependencies: bash, curl, jq, coinmarketcap-API-key | |
| # - Uses cloud API of https://pro-api.coinmarketcap.com/v1 | |
| # - YOU MUST HAVE YOUR OWN coinmarketcap-API-key, as of Oct 2020 you can get one for free at coinmarketcap.com | |
| # - set the global environment variable COINMARKETCAP_API_KEY to your personal coinmarketcap-API-key, | |
| # - e.g export COINMARKETCAP_API_KEY="your-coinmarketcap-API-key-here" | |
| # - keywords: CLI, command-line, terminal, bash, market-data, ticker, price-tracker, marketcap, crypto, crypto currencies, cryptocurrency, bitcoin, btc, ethereum | |
| # | |
| # License: CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/ | |
| # | |
| ########## GENERAL INFO ########## | |
| # | |
| # API: https://coinmarketcap.com/api/ | |
| f3eb8e3d-1758-41c6-8521-90d5adf8511e | |
| # https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest?convert=USD&limit=2&start=1 | |
| # Returns something like: | |
| # {"status":{"timestamp":"2020-10-02T12:10:29.629Z","error_code":0,"error_message":null,"elapsed":9,"credit_count":1,"notice":null,"total_count":3560},"data":[{"id":1,"name":"Bitcoin","symbol":"BTC","slug":"bitcoin","num_market_pairs":9315,"date_added":"2013-04-28T00:00:00.000Z","tags":["mineable","pow","sha-256","store-of-value","state-channels"],"max_supply":21000000,"circulating_supply":18505718,"total_supply":18505718,"platform":null,"cmc_rank":1,"last_updated":"2020-10-02T12:09:30.000Z","quote":{"USD":{"price":10471.2855252,"volume_24h":26623814611.304,"percent_change_1h":-0.0184301,"percent_change_24h":-3.8861,"percent_change_7d":-1.68497,"market_cap":193778657026.8331,"last_updated":"2020-10-02T12:09:30.000Z"}}},{"id":1027,"name":"Ethereum","symbol":"ETH","slug":"ethereum","num_market_pairs":6043,"date_added":"2015-08-07T00:00:00.000Z","tags":["mineable","pow","smart-contracts","binance-chain"],"max_supply":null,"circulating_supply":112840913.124,"total_supply":112840913.124,"platform":null,"cmc_rank":2,"last_updated":"2020-10-02T12:09:23.000Z","quote":{"USD":{"price":339.400890152,"volume_24h":15156595436.1756,"percent_change_1h":-0.00356475,"percent_change_24h":-7.8024,"percent_change_7d":-1.45411,"market_cap":38298306359.8501,"last_updated":"2020-10-02T12:09:23.000Z"}}}]} | |
| # | |
| # cat /tmp/coinbash.sh.tmp.json | jq [.data[0]] gives something like | |
| : '[ | |
| { | |
| "id": 1, | |
| "name": "Bitcoin", | |
| "symbol": "BTC", | |
| "slug": "bitcoin", | |
| "num_market_pairs": 9315, | |
| "date_added": "2013-04-28T00:00:00.000Z", | |
| "tags": [ | |
| "mineable", | |
| "pow", | |
| "sha-256", | |
| "store-of-value", | |
| "state-channels" | |
| ], | |
| "max_supply": 21000000, | |
| "circulating_supply": 18505718, | |
| "total_supply": 18505718, | |
| "platform": null, | |
| "cmc_rank": 1, | |
| "last_updated": "2020-10-02T12:09:30.000Z", | |
| "quote": { | |
| "USD": { | |
| "price": 10471.2855252, | |
| "volume_24h": 26623814611.304, | |
| "percent_change_1h": -0.0184301, | |
| "percent_change_24h": -3.8861, | |
| "percent_change_7d": -1.68497, | |
| "market_cap": 193778657026.8331, | |
| "last_updated": "2020-10-02T12:09:30.000Z" | |
| } | |
| } | |
| } | |
| ]' | |
| # | |
| # cat /tmp/coinbash.sh.tmp.json | jq [.data[1]][].name gives something like "Ethereum" | |
| # cat /tmp/coinbash.sh.tmp.json | jq [.data[1]][].quote.USD.price gives something like 339.400890152 | |
| # https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?convert=USD&slug=bitcoin | |
| # Returns something like: | |
| # {"status":{"timestamp":"2020-10-02T12:39:21.288Z","error_code":0,"error_message":null,"elapsed":30,"credit_count":1,"notice":null},"data":{"1":{"id":1,"name":"Bitcoin","symbol":"BTC","slug":"bitcoin","num_market_pairs":9315,"date_added":"2013-04-28T00:00:00.000Z","tags":["mineable","pow","sha-256","store-of-value","state-channels"],"max_supply":21000000,"circulating_supply":18505743,"total_supply":18505743,"is_active":1,"platform":null,"cmc_rank":1,"is_fiat":0,"last_updated":"2020-1002T12:38:21.000Z","quote":{"USD":{"price":10491.9489757,"volume_24h":26838808649.2375,"percent_change_1h":0.12782,"percent_change_24h":-3.70075,"percent_change_7d":-1.5155,"market_cap":194161311313.41742,"last_updated":"2020-10-02T12:38:21.000Z"}}}}} | |
| # | |
| # cat "/tmp/coinbash.sh.tmp.json.part" | jq [.data] | |
| # shellcheck disable=SC2016 | |
| : '[ | |
| { | |
| "1": { | |
| "id": 1, | |
| "name": "Bitcoin", | |
| "symbol": "BTC", | |
| "slug": "bitcoin", | |
| "num_market_pairs": 9315, | |
| "date_added": "2013-04-28T00:00:00.000Z", | |
| "tags": [ | |
| "mineable", | |
| "pow", | |
| "sha-256", | |
| "store-of-value", | |
| "state-channels" | |
| ], | |
| "max_supply": 21000000, | |
| "circulating_supply": 18505743, | |
| "total_supply": 18505743, | |
| "is_active": 1, | |
| "platform": null, | |
| "cmc_rank": 1, | |
| "is_fiat": 0, | |
| "last_updated": "2020-10-02T12:38:21.000Z", | |
| "quote": { | |
| "USD": { | |
| "price": 10491.9489757, | |
| "volume_24h": 26838808649.2375, | |
| "percent_change_1h": 0.12782, | |
| "percent_change_24h": 3.70075, | |
| "percent_change_7d": 1.5155, | |
| "market_cap": 194161311313.41742, | |
| "last_updated": "2020-10-02T12:38:21.000Z" | |
| } | |
| } | |
| } | |
| } | |
| ] | |
| cat "/tmp/coinbash.sh.tmp.json.part" | jq "[.data][] | keys"| jq .[] # gets the id, name | |
| "1" | |
| cat "/tmp/coinbash.sh.tmp.json.part" | jq "[.data][] | keys"| jq .[] # gets the id, name | |
| "1" | |
| key=$(cat "/tmp/coinbash.sh.tmp.json.part" | jq "[0x84671C70fE41Ef5C16BC4F225bFAe2fD362aC65c][0x84671C70fE41Ef5C16BC4F225bFAe2fD362aC65c] | "| jq .[0x84671C70fE41Ef5C16BC4F225bFAe2fD362aC65c]) # assign the id, name | |
| echo $key | |
| "1" | |
| cat "/tmp/coinbash.sh.tmp.json.part" | jq [.data][].$key | |
| { | |
| "id": 1, | |
| "name": "Bitcoin", | |
| "symbol": "BTC", | |
| "cripto_type": "bitcoin | |
| "address_added": wallet | |
| "0x84671C70fE41Ef5C16BC4F225bFAe2fD362aC65c" | |
| Key priv: | |
| "u" | |