Add list-crypto-rates.ps1

This commit is contained in:
Markus Fleschutz 2021-08-26 16:59:23 +02:00
parent 05e65cbb21
commit 0c3fc80a0d
4 changed files with 60 additions and 5 deletions

View File

@ -93,6 +93,7 @@ list-commits.ps1, lists all commits in the current/given Git repository
list-cli-tools.ps1, lists available command-line interface (CLI) tools
list-clipboard.ps1, lists the contents of the clipboard
list-credits.ps1, shows the credits
list-crypto-rates.ps1, lists the current crypto exchange rates
list-dir.ps1, lists the directory content (formatted in columns)
list-dir-tree.ps1, lists the directory tree content
list-drives.ps1, lists all drives

Can't render this file because it has a wrong number of fields in line 84.

View File

@ -213,12 +213,13 @@ Mega Collection of PowerShell Scripts
* [list-anagrams.ps1](Scripts/list-anagrams.ps1) - lists all anagrams of the given word
* [list-city-weather.ps1](Scripts/list-city-weather.ps1) - lists the current weather of cities worldwide (west to east)
* [list-credits.ps1](Scripts/list-credits.ps1) - shows the credits
* [list-crypto-rates.ps1](Scripts/list-crypto-rates.ps1) - lists the current crypto exchange rates
* [list-environment-variables.ps1](Scripts/list-environment-variables.ps1) - lists all environment variables
* [list-emojis.ps1](Scripts/list-emojis.ps1) - lists the emojis of Unicode 13.0
* [list-fritzbox-calls.ps1](Scripts/list-fritzbox-calls.ps1) - lists the FRITZ!Box calls
* [list-fritzbox-devices.ps1](Scripts/list-fritzbox-devices.ps1) - lists FRITZ!Box's known devices
* [list-earthquakes.ps1](Scripts/list-earthquakes.ps1) - lists earthquakes with magnitude >= 6.0 for the last 30 days
* [list-exchange-rates.ps1](Scripts/list-exchange-rates.ps1) - lists the exchange rates for the given currency
* [list-exchange-rates.ps1](Scripts/list-exchange-rates.ps1) - lists the current exchange rates for the given currency
* [list-memos.ps1](Scripts/list-memos.ps1) - lists the memos at $HOME/Memos.csv
* [list-mysql-tables.ps1](Scripts/list-mysql-tables.ps1) - lists the MySQL server tables
* [list-news.ps1](Scripts/list-news.ps1) - lists the latest news

View File

@ -0,0 +1,53 @@
<#
.SYNOPSIS
list-crypto-rates.ps1
.DESCRIPTION
Lists the current crypto exchange rates
.EXAMPLE
PS> .\list-crypto-rates.ps1
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
Author: Markus Fleschutz
License: CC0
#>
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
exit 0
} catch {
write-error "⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])"
exit 1
}

View File

@ -2,9 +2,9 @@
.SYNOPSIS
list-exchange-rates.ps1 [<currency>]
.DESCRIPTION
Lists the exchange rates for the given currency (USD per default)
Lists the current exchange rates for the given currency (USD per default)
.EXAMPLE
PS> .\list-exchange-rates.ps1
PS> .\list-exchange-rates.ps1 EUR
.LINK
https://github.com/fleschutz/PowerShell
.NOTES
@ -23,8 +23,8 @@ function ListExchangeRates { param([string]$currency)
try {
""
"Exchange Rates for 1 $currency (source: http://www.floatrates.com)"
"============================================================"
"Current Exchange Rates for 1 $currency (source: http://www.floatrates.com)"
"================================"
ListExchangeRates $currency | format-table -property Rate,Currency,Inverse,Date
exit 0