tari.sh 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #!/bin/bash
  2. ## https://github.com/tari-project/tari/releases
  3. PASSWD="${1:-}"
  4. AMOUNT="${2:-0}"
  5. TARGET="${3:-}"
  6. BASE="${4:-.tari}"
  7. TARICMD=""
  8. cd "$(dirname `readlink -f "$0"`)" && [ -f "./minotari_console_wallet" ] || exit 1
  9. [ "$AMOUNT" == "seed" ] && {
  10. ./minotari_console_wallet --non-interactive-mode --network Mainnet --base-path "${BASE}" -p base_node.mining_enabled=false -p wallet.grpc_enabled=false --password "${PASSWD}" --recovery --seed-words "${TARGET}"
  11. exit "$?"
  12. }
  13. [ "$AMOUNT" == "ui" ] && {
  14. ./minotari_console_wallet --network Mainnet --base-path "${BASE}" -p base_node.mining_enabled=false -p wallet.grpc_enabled=false --password "${PASSWD}"
  15. exit "$?"
  16. }
  17. result=`./minotari_console_wallet --non-interactive-mode --network Mainnet --base-path "${BASE}" -p base_node.mining_enabled=false -p wallet.grpc_enabled=false --password "${PASSWD}" --command-mode-auto-exit sync 2>/dev/null`
  18. block=`echo "$result" |grep -o '^Completed! Height: [0-9]\+,' |grep -o '[0-9]\+'`
  19. [ -n "$block" ] && [ "$block" -gt "0" ] && echo "Sync Block Height: ${block}"
  20. echo "$result" |grep '^Available balance:\|^Pending incoming balance:\|^Pending outgoing balance:'
  21. amount=`echo "$result" |grep '^Available balance:' |grep ' T$' |grep -o '[0-9]\+' |head -n1`
  22. [ -n "$amount" ] && [ "$amount" -gt "0" ] || exit 1
  23. [ -n "$AMOUNT" ] || AMOUNT="0"
  24. [ "$AMOUNT" -eq "0" ] && exit 0
  25. [ "$AMOUNT" -gt "0" ] && [ "$AMOUNT" -ge "$amount" ] && AMOUNT="$amount"
  26. [ "$AMOUNT" -eq "-1" ] && AMOUNT="$amount"
  27. [ "$AMOUNT" -le "-2" ] && MINAMOUNT="$((10 ** -AMOUNT))" && [ "$((AMOUNT + MINAMOUNT))" -ge "0" ] && AMOUNT="$amount" || exit 0
  28. [ "$AMOUNT" -le "0" ] && exit 1
  29. [ -n "$TARGET" ] || exit 2
  30. [ ! -n "$TARICMD" ] && [ "${#TARGET}" -eq "91" ] && TARICMD="send-minotari"
  31. [ ! -n "$TARICMD" ] && [ "${#TARGET}" -gt "91" ] && TARICMD="send-one-sided-to-stealth-address"
  32. [ -n "$TARICMD" ] || exit 2
  33. result=`./minotari_console_wallet --non-interactive-mode --network Mainnet --base-path "${BASE}" -p base_node.mining_enabled=false -p wallet.grpc_enabled=false --password "${PASSWD}" --command-mode-auto-exit "${TARICMD}" "${AMOUNT}T" "${TARGET}" 2>&1`
  34. TxID=`echo "$result" |grep '^Transaction ID:' |grep -o '[0-9]\+'`
  35. [ -n "$TxID" ] && echo -e "Sending: ${AMOUNT} XTM --> ${TARGET}\nTxID[$(date '+%Y/%m/%d %H:%M:%S')]: ${TxID}\n" && exit 0
  36. exit 1