blob: 478efb96834f33d061b23349b7881d1fa2c2e667 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#!/bin/bash
#
# Get currency exchanges rate and update a ledger price file.
#
set -e
LEDGER="$HOME/.ledgerrc"
if [[ ! -f "$LEDGER" ]] ; then
echo "No ledger configuration file: $LEDGER" >&2
exit 13
fi
PRICE_DB_FILE=$(sed -nE "s/^--price-db (.*)/\1/p" "$LEDGER")
PRICE_DB_FILE="${PRICE_DB_FILE/#\~/$HOME}"
xe() {
curl -s "http://download.finance.yahoo.com/d/quotes.csv?s=$1&f=p"
}
print_rate() {
currency="$1"
symbol="$2"
val=$(xe "$currency=X")
test -n "$val" && echo P $(date +"%Y/%m/%d %H:%M:%S") $symbol $val R
}
{
print_rate "USDRUB" "\$"
print_rate "EURRUB" "€"
print_rate "PLNRUB" "P"
} >> "$PRICE_DB_FILE"
|