PowerShell/Scripts/list-crypto-rates.ps1

53 lines
1.6 KiB
PowerShell
Raw Normal View History

2021-09-27 10:38:12 +02:00
<#
2021-08-26 16:59:23 +02:00
.SYNOPSIS
2021-09-24 17:19:49 +02:00
Lists the current crypto exchange rates
2021-10-04 21:29:23 +02:00
.DESCRIPTION
2022-01-29 12:47:46 +01:00
This PowerShell script lists the current crypto exchange rates.
2021-08-26 16:59:23 +02:00
.EXAMPLE
2021-09-24 17:19:49 +02:00
PS> ./list-crypto-rates
2021-08-26 16:59:23 +02:00
.LINK
https://github.com/fleschutz/PowerShell
2022-01-29 12:47:46 +01:00
.NOTES
2022-09-06 21:42:04 +02:00
Author: Markus Fleschutz | License: CC0
2021-08-26 16:59:23 +02:00
#>
function ListCryptoRate { param([string]$Symbol, [string]$Name)
$Rates = (invoke-webRequest -uri "https://min-api.cryptocompare.com/data/price?fsym=$Symbol&tsyms=USD,EUR,RUB,CNY" -userAgent "curl" -useBasicParsing).Content | ConvertFrom-Json
new-object PSObject -property @{ 'Cryptocurrency' = "1 $Name ($Symbol) ="; 'USD' = "$($Rates.USD)"; 'EUR' = "$($Rates.EUR)"; 'RUB' = "$($Rates.RUB)"; 'CNY' = "$($Rates.CNY)" }
}
function ListCryptoRates {
ListCryptoRate BTC "Bitcoin"
ListCryptoRate ETH "Ethereum"
ListCryptoRate ADA "Cardano"
ListCryptoRate BNB "Binance Coin"
ListCryptoRate USDT "Tether"
ListCryptoRate XRP "XRP"
ListCryptoRate DOGE "Dogecoin"
ListCryptoRate USDC "USD Coin"
ListCryptoRate DOT "Polkadot"
ListCryptoRate SOL "Solana"
ListCryptoRate UNI "Uniswap"
ListCryptoRate BUSD "Binance USD"
ListCryptoRate BCH "Bitcoin Cash"
ListCryptoRate LTC "Litecoin"
ListCryptoRate LINK "Chainlink"
ListCryptoRate LUNA "Terra"
ListCryptoRate ICP "Internet Computer"
ListCryptoRate WBTC "Wrapped Bitcoin"
ListCryptoRate MATIC "Polygon"
ListCryptoRate XLM "Stellar"
}
try {
""
"Current Crypto Exchange Rates (source: cryptocompare.com)"
"============================="
ListCryptoRates | format-table -property @{e='Cryptocurrency';width=28},USD,EUR,RUB,CNY
2021-09-27 10:09:45 +02:00
exit 0 # success
2021-08-26 16:59:23 +02:00
} catch {
2022-04-13 12:06:32 +02:00
"⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
2021-08-26 16:59:23 +02:00
exit 1
}