포터블기기 강좌


coin_price_capt.png


각 거래소의 api를 이용하지 않고 coinmarketcap.com웹을 정리해주는 배시 스크립트입니다
빠르게 가격확인을 해보려고 만들었네요
다음을 ~/bin에 coin이라는 이름으로 넣으시고 chmod +x ./coin 으로 실행권한 주시고 쓰시면 됩니다.
인자는 종목코드를 넣어도 되고 이름의 일부만 넣어도 되게 했습니다.
인자를 주지 않으면 상위 100개의 가상화폐 가격이 표시됩니다 

watch -n 30 coin btc ethereum 
이런식으로 비트코인과 이더리움의 시세가 업데이트되게 할 수도 있습니다.
 
-------------8<--------------8<--------------8<--------------8<--------------8<--------------8<--------------
#!/bin/bash
# usage: coin [btc eth etc...]

contents=$(w3m -dump coinmarketcap.com)
total=100
regex='^([0-9]+) +'   # 1.rank
regex+='([A-Z]+)+ +'  # 2.coin
regex+='([^$]+) +'    # 3.name
regex+='(\$[0-9,]+) +'  # 4. market cap
regex+='(\$[0-9,.]+) +'  # 5. price
regex+='(\$[0-9,]+) +' # 6. volume
regex+='([0-9,.]+) +' # 7.circulating supply
regex+='([A-Z]*) +'  # 8.optional unit
regex+='([-0-9,.]+%)'  # 9.change

i=0
while read -r line
do
    if [[ $line =~ $regex ]]; then
        rank="${BASH_REMATCH[1]}"
        coin="${BASH_REMATCH[2]}"
        name="${BASH_REMATCH[3]}"
        mcap="${BASH_REMATCH[4]}"
        price="${BASH_REMATCH[5]}"
        vol="${BASH_REMATCH[6]}"
        change="${BASH_REMATCH[9]}"

        # Filter the results if parameters are given.
        if [ $# -gt 0 ]; then
            found=0
            for c in "$@"; do
                c=$(echo "$c" | tr [a-z] [A-Z])
                n=$(echo "$name" | tr [a-z] [A-Z])
                if [[ "$c" == "$coin" || "$n" =~ .*"$c".* ]]; then
                   found=1
                fi
            done
            if [ $found -eq 0 ]; then
                continue
            fi
        fi
        ranks[$i]=$rank
        coins[$i]=$coin
        names[$i]=$name
        mcaps[$i]=$mcap
        prices[$i]=$price
        vols[$i]=$vol
        changes[$i]=$change
        if [ $coin == "BTC" ]; then
            btc_mcap=$mcap
        fi
        i=$((i+1))
    fi
    if [ $i -eq $total ]; then
        break
    fi
done <<< "$(echo -e "$contents")"

# Print in a form
printf "%-3s | %+20s | %+9s | %+13s | %+12s | %+7s\n" \
    "RNK" "NAME & SYMBOL" "PRICE" "Market Cap" "VOLUME(24h)" "CHNG(24h)"
echo "---------------------------------------------------------------------------------"
for (( i=0; i<${#ranks[@]}; i++ )); do
    names[$i]=$(echo ${names[$i]} | sed 's/ $//')  # remove trailing spaces
    mcaps[$i]=$(echo ${mcaps[$i]} | sed 's/,[0-9]\+$/k/g') # shorten numbers
    vols[$i]=$(echo ${vols[$i]} | sed 's/,[0-9]\+$/k/g')
    printf "%-3s | %+20s | %+9s | %+13s | %+12s | %+7s\n" \
        "${ranks[$i]}" "${names[$i]} ${coins[$i]}" "${prices[$i]}" \
        "${mcaps[$i]}" "${vols[$i]}" "${changes[$i]}"
done

번호 제목 작성자 작성일 조회
201 팜 IIIe 쓰는 법 (업무용, 학습용, 오락용, 오소독스~~) [7] 성야무인 02.12 3469
200 일본어 학도를 위한 아이폰(팟터치) 사용기 [8] file minki 02.13 3727
199 SKT 미라지 세팅방법 [2] Freedom^^ 02.13 3375
198 [노키아] 노키아를 무선 AP기기로 만드는 어플 JOIKU 소개 [2] file 미케니컬 02.17 3501
197 심비안 OS의 어플 OPDA 사이트를 통해 쉽게 인증하기!!! [7] tubebell 02.20 4185
196 이이폰(팟터치) 잠재우는 어플 테스트 후기 (첫째날+둘째날) [5] minki 02.23 3598
195 아이폰(팟터치)가 공유기로 싱크 잘 안 될 때 (내부 네크워크 접속 불량 등) [1] minki 02.25 3834
194 KPUG 강좌, KPUG 자료실 2,000점 이벤트 KPUG.KR 03.03 3767
193 때늦은 클리에 T650 개조기 - 슈퍼 T650을 만들어 보자.. [8] 피델리티 03.04 4318
192 아이폰 테더링을 위한 블루투스 페어링(연결)이 잘 안될 때 채리새우 03.08 19562
191 때늦은 팜 강좌 - 꼭꼭 숨어라 시리즈 강좌 1. 핫싱크 데이터 전송 피하기 [5] file 피델리티 03.10 3395
190 때늦은 팜 강좌 - 꼭꼭 숨어라 시리즈 강좌 2. 어플리케이션 숨기기 [2] file 피델리티 03.10 3671
189 때늦은 팜 강좌 - 꼭꼭 숨어라 시리즈 강좌 3. 개인 데이터베이스 백업 [4] file 피델리티 03.10 3311
188 구PIMS(TC) 를 신규PIMS(ZIre72)로 업그레이드 file 부릉이 03.13 3687
187 조디악용 팜데스크 실행시 에러 해결법 [2] 권동휘 03.17 3575
186 대용량 메모는 아웃룩 작업 또는 연락처에 기재하자 거스파이 03.18 4179
185 유럽판 드로이드 마일스톤스 단략 사용기와 카메라 성능 샘플 사진들 (안드로이드폰) [3] file 거스파이 03.18 3462
184 WM폰에서 페이스북 사용하는 3가지 방법 (동영상 첨부) [1] 거스파이 03.18 3380
183 (맥 소개6) 하드만 물리면 다중 백업이 됩니다. [5] minki 03.29 4444
182 120v 전용 아답터 220v으로 만들기 [4] file 와늬 03.29 5044

오늘:
491
어제:
840
전체:
15,186,106