Допис
Діліться своїми знаннями.

Шпаргалка Sui CLI частина 2
Газ і кран з Sui CLI
Коли ви розробляєте свої програми, в ідеалі, ви почнете з devnet, а потім testnet перед розгортанням у основну мережу.
Девнет і газ Testnet можна придбати безкоштовно. Але мейннет? ні.
Ви можете легко запросити газ на devnet за допомогою client faucet
команди:
sui client faucet
Для testnet вам потрібно виконати цю команду cURL, щоб запитати gas:
curl --location --request POST 'https://faucet.devnet.sui.io/v1/gas' \
--header 'Content-Type: application/json' \
--data-raw '{
"FixedAmountRequest": {
"recipient": "<YOUR SUI ADDRESS>"
}
}'
Ви також можете відвідати офіційний веб-сайт змішувача Sui, щоб отримати деякі токени Devnet та Testnet.
Використовуйте команду client gas для перевірки доступних токенів газу клієнта в поточному середовищі.
sui client gas
Для транзакцій в основній мережі вам потрібно буде придбати Sui на біржах та поповнити свій гаманець.
Публікаційні пакети
Ви можете публікувати пакети в мережі Sui за допомогою команди client publish.
sui client publish [OPTIONS] [package_path]
Ось приклад команди для публікації пакету з бюджетом газу 5000000 MIST.
sui client publish --gas-budget 5000000
Бюджет газу не фіксований, швидше за все, ви хочете перевірити на ланцюжку відповідну кількість газу та сплатити його вперед.
Управління монетами за допомогою Sui CLI
Коли ви працюєте з монетами SUI, вам, ймовірно, доведеться часто їх об'єднувати та розділяти, особливо коли ви жонглюєте газом або надсилаєте різні суми різним контрактам або користувачам.
Якщо у вас лежать дві монети, і ви хочете їх консолідувати, скористайтеся командою merge-coin так:
sui client merge-coin --primary-coin <COIN_ID> --coin-to-merge <COIN_ID>
Основна монета - це та, яку ви збережете, а монета для злиття - та, яка поглинається.
Замість цього потрібно розділити монету? Можливо, ви хочете виплатити декільком одержувачам або просто потрібні різні номінали. Ви можете розрізати монету за допомогою спліт-монети так:
sui client split-coin --coin-id <COIN_ID> --amounts <AMOUNTS>
Якщо вам потрібно надіслати монети, ви скористаєтеся командою client transfer-sui так:
sui client transfer-sui --sui-coin-object-id <COIN_ID> --to <ADDRESS>
Це проста передача - ви надаєте йому ідентифікатор монети та адресу одержувача, і він переміщує кошти.
Sui має програмовані транзакції, тому ви можете надсилати відразу декільком одержувачам за допомогою команди pay-sui:
sui client pay-sui --input-coins <COIN_ID> --recipients <ADDRESS> --amounts <AMOUNTS>
Ви передасте монету (або список монет), а потім вкажіть одержувачів і скільки повинен отримати кожен. Він ідеально підходить для пакетних платежів або масового розповсюдження токенів.
Управління об'єктами за допомогою Sui CLI
Суй - це все про об'єкти. Контракти, токени і навіть ваші монети - все це об'єкти.
Щоб отримати детальну інформацію про будь-який об'єкт, просто зателефонуйте:
sui client object <OBJECT_ID>
Це призведе до виведення всіх метаданих, інформації про власника та все інше, що несе об'єкт.
Якщо ваш об'єкт має динамічні поля (наприклад, реєстр або зростаюча структура даних), ви також можете заглибитися в них:
sui client dynamic-field <DYNAMIC_FIELD_ID>
Це дуже зручна функція, яку ви можете часто використовувати під час розробки.
Програмовані блоки транзакцій (PTB)
Sui - одна з небагатьох ланцюгів з рідними PTB. Програмовані блоки транзакцій дозволяють об'єднати кілька операцій в одну транзакцію - щось на зразок міні-сценарію, який виконується в ланцюжку.
Скажімо, вам потрібно викликати функцію переміщення безпосередньо з вашого CLI. Ви зробите це так:
sui client ptb --move-call <PACKAGE>::<MODULE>::<FUNCTION> "<TYPE>" <ARGS>
Замініть адресу пакета, назву модуля та функцію, на яку ви націляєте. Потім введіть тип та аргументи за потреби.
І якщо ви хочете перенести кілька об'єктів на інший гаманець за один раз, ви також можете використовувати PTB:
sui client ptb --transfer-objects "[<OBJECT_ID>]" <ADDRESS>
Wrap the object IDs in brackets if you’re sending more than one, and finish it off with the recipient’s address.
Висновок
Сподіваємось, цієї статті достатньо для ознайомлення з інструментом Sui CLI. Це більше, ніж клієнт, є багато чого, що ви можете зробити за допомогою цього інструменту.
Якщо вам коли-небудь знадобиться швидке оновлення або ви випробовуєте нову команду, зробіть шпаргалку Sui CLI своїм найкращим другом. І якщо ви сумніваєтесь, документи Sui Client CLI мають повну розбивку.
- Sui
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Зароби свою частку з 1000 Sui
Заробляй бали репутації та отримуй винагороди за допомогу в розвитку спільноти Sui.

- ... SUIacher+1641
- ... SUIKurosakisui+1309
- ... SUIChubbycheeks +1176
- ... SUIjakodelarin+1092
- ... SUITucker+1067
- ... SUIzerus+888
- ... SUIOpiiii+846
- Чому BCS вимагає точного порядку полів для десеріалізації, коли структури Move мають названі поля?65
- Помилки перевірки кількох джерел» у публікаціях модуля Sui Move - автоматичне вирішення помилок55
- Як максимізувати прибуток від SUI: Sui Staking проти Liquid Staking414
- Невдала операція Sui: об'єкти, зарезервовані для іншої транзакції49
- Помилка Sui Move - Неможливо обробити транзакцію Не знайдено дійсних газових монет для транзакції316