본문으로 건너뛰기

Sui CLI 치트 시트

이 요약 자료는 자주 사용하는 Sui CLI 명령어를 보여준다.

Addresses & aliases​

CommandDescription
sui client active-address활성 주소를 가져온다
sui client addresses주소, 별칭 및 현재 활성 주소를 나열한다.
sui client new-address ed25519ED25519 체계를 사용하여 새 주소를 생성한다.
sui client new-address ed25519 MY_ALIASED25519 체계와 별칭으로 새 주소를 만든다.
sui client switch --address ADDRESS이것을 활성 주소로 만든다(별칭도 허용).
sui keytool convert PRIVATE_KEYHex 또는 Base64 형식의 개인 키를 새로운 형식으로 변환한다(Bech32 인코딩된 33바이트 플래그 || "suiprivkey"로 시작하는 개인 키)
sui keytool generate ed25519ED25519 체계를 사용하여 새 키 쌍을 생성하고 파일에 저장한다.
sui keytool import INPUT KEY_SCHEME입력 니모닉 구문 또는 Bech32로 인코딩된 33바이트 플래그 || "suiprivkey"로 시작하는 privkey를 사용하여 Sui CLI 키 저장소에 새 키를 추가한다.
sui keytool update-alias OLD_ALIAS NEW_ALIAS주소의 별칭을 업데이트한다

Faucet & gas​

CommandDescription
sui client faucet활성화된 네트워크와 연결된 faucet에서 SUI 코인을 얻는다.
sui client faucet --address ADDRESS해당 주소로 SUI 코인을 받는다 (별칭도 허용됨).
sui client faucet --url CUSTOM_FAUCET_URL커스텀 faucet에서 SUI 코인을 받는다
sui client gas활성 주소에 대한 가스 코인을 나열
sui client gas ADDRESS주어진 주소에 대한 가스 코인 목록을 표시한다(별칭도 허용).

Network command description​

CommandDescription
sui client active-env활성 환경을 확보한다
sui client envs정의된 환경 목록
sui client new-env --rpc URL --alias ALIASURL과 별칭을 사용하여 새 환경을 만든다.
sui client switch --env ENV_ALIAS주어진 환경으로 전환한다
sui genesis부트스트랩을 실행하고 새로운 Sui 네트워크를 초기화한다.
sui start로컬 Sui 네트워크를 시작한다
sui-faucet로컬 faucet을 시작한다. 참고로, 이것은 다른 바이너리 파일이다.

Create, build, and test a Move project​

CommandDescription
sui move build현재 디렉토리에 Move 프로젝트를 빌드한다
sui move build --path PATH제공된 경로에서 Move 프로젝트를 빌드한다
sui move migrate PATH제공된 경로의 패키지에 대해 Move 2024로 마이그레이션한다.
sui move new PROJECT_NAME지정된 폴더에 새 Move 프로젝트를 생성한다.
sui move test현재 디렉토리에서 Move 프로젝트를 테스트한다.
sui move test --trace현재 디렉터리의 Move 테스트에 대한 실행 트레이스를 생성한다. Move Trace Debugger 확장 프로그램과 함께 사용한다.

Executing transactions​

CommandDescription
sui client call \
  --package PACKAGE \
  --module MODULE \
  --function FUNCTION
Move 패키지를 호출한다
sui client merge-coin \
  --primary-coin COIN_ID \
  --coin-to-merge COIN_ID
두 코인을 merge한다.
sui client split-coin \
  --coin-id COIN_ID \
  --amounts 1000
코인을 두 개로 나눈다. 하나는 1000 MIST가 들어있고 나머지는 다른 하나에 있다

sui client pay-sui \
  --input-coins COIN_ID \
  --recipients ADDRESS \
  --amounts 100000000

0.1 SUI를 주소로 전송하고 동일한 코인을 가스로 사용한다.
sui client transfer-sui \
  --sui-coin-object-id COIN_ID \
  --to ADDRESS
SUI object를 주소로 전송하고 동일한 코인을 가스에 사용한다.

Programmable transaction blocks (PTBs)​

CommandDescription
sui client ptb --move-call p::m::f "<type>" args패키지 및 모듈에서 Move 함수 호출
sui client ptb --make-move-vec "<u64>" "[1000,2000]"u64 유형의 두 요소를 사용하여 Move 벡터를 만든다.

sui client ptb \
  --split-coins gas "[1000]" \
  --assign new_coins \
  --transfer-objects "[new_coins]" ADDRESS

가스 코인을 나눠서 주소로 이체한다
sui client ptb --transfer-objects "[object_id]" ADDRESS

Object를 주소로 전송한다. 배열에 여러 object를 전달할 수 있다.

sui client ptb \
  --move-call sui::tx_context::sender \
  --assign sender \
  --publish "." \
  --assign upgrade_cap \
  --transfer-objects "[upgrade_cap]" sender

Move 패키지를 게시하고 upgrade capability를 전송자에게 전송한다.
sui client ptb --move-call p::m::f "<type>" args --dry-run트랜잭션을 커밋하지 않고 PTB 실행을 시뮬레이션한다
sui client ptb --move-call p::m::f "<type>" args --preview트랜잭션을 실행하는 대신 PTB 명령을 미리 본다
sui client ptb --move-call p::m::f "<type>" args --summaryPTB의 짧은 요약(digest, 상태, 가스 비용)을 표시한다

sui client ptb \
  --move-call p::m::f "<type>" args \
  --serialize-unsigned-transaction

실행하지 않고 unsigned PTB를 base64로 직렬화한다