最後に生成したブロックの番号を取得
BLOCK=$(curl -s --data '{"jsonrpc":"2.0", "method":"database_api.find_witnesses", "params": {"owners":["yasu.witness"]}, "id":1}' https://api.steemit.com|jq ".result.witnesses[0].last_confirmed_block_num")
ブロックのタイムスタンプを取得
TIMESTAMP=$(curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_block", "params":['$BLOCK'], "id":1}' https://api.steemit.com|jq -r ".result.timestamp")
経過時間を取得
DIFF=$(( $(date +%s) - $(date --utc --date $TIMESTAMP +%s) ))
分を取得
echo $DIFF | awk '{print $1 / 60 " min"}'
while true; do
BLOCK=$(curl -s --data '{"jsonrpc":"2.0", "method":"database_api.find_witnesses", "params": {"owners":["yasu.witness"]}, "id":1}' https://api.steememory.com|jq ".result.witnesses[0].last_confirmed_block_num")
TIMESTAMP=$(curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_block", "params":['$BLOCK'], "id":1}' https://api.steememory.com|jq -r ".result.timestamp")
DIFF=$(( $(date +%s) - $(date --utc --date $TIMESTAMP +%s) ))
echo $DIFF | awk -v block=$BLOCK '{printf "%s Block Age %.1f min\n", block, $1 / 60}'
sleep 10
done
少し改善
while true; do
BLOCK=$(curl -s --data '{"jsonrpc":"2.0", "method":"database_api.find_witnesses", "params": {"owners":["yasu.witness"]}, "id":1}' https://api.steememory.com|jq ".result.witnesses[0].last_confirmed_block_num")
TIMESTAMP=$(curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_block", "params":['$BLOCK'], "id":1}' https://api.steememory.com|jq -r ".result.timestamp")
DIFF=$(( $(date +%s) - $(date --utc --date $TIMESTAMP +%s) ))
echo $DIFF | awk -v block=$BLOCK -v sec=$(($DIFF%60)) -v min=$(($DIFF%3600/60)) -v hours=$(($DIFF/3600)) '{printf "%s Block Age %d:%02d:%02d\n", block, hours, min, sec}'
sleep 10
done