SPL Token CLI -viite

spl-token-komentorivikäyttöliittymällä luodaan ja hallitaan mintejä, token account -tilejä, valtuuksia, siirtoja ja Token-2022-laajennuksia.

Tämä viite noudattaa versiota spl-token-cli v5.6.1, joka sisältyy Agave v4.2.1 -pakettiin. Suorita spl-token --version ja käytä <command> --help nähdäksesi asennetussa versiossasi käytettävissä olevat tarkat valinnat.

Mintin luonti, siirrot, valtuuksien muutokset, polttamiset, jäädytykset ja tilin sulkeminen lähettävät transaktioita. Tarkista klusteri, Token Program, allekirjoittaja ja osoitteet ennen komennon suorittamista. Mainnetissa tehtävät muutokset koskevat oikeita varoja.

Asennus ja ohjeen käyttö

Agave CLI -julkaisupaketti sisältää spl-token-työkalun. Jos sitä ei ole asennettu, käytä julkaistua Rust-pakettia (crate):

cargo install spl-token-cli --version 5.6.1
spl-token --version

Tarkastele ohjetta juuritasolla tai komentokohtaisesti:

spl-token --help
spl-token create-token --help
spl-token transfer --help

Yleiset valinnat

Sijoita yleiset valinnat ennen komentoa.

ValintaTarkoitus
-u, --url <URL_OR_MONIKER>Valitse RPC-URL tai mainnet-beta, testnet, devnet tai localhost.
-C, --config <PATH>Käytä toista Solana CLI:n asetustiedostoa.
--fee-payer <KEYPAIR>Valitse tili, joka maksaa transaktiomaksut.
-p, --program-id <ADDRESS>Käytä nimenomaista Token Program ID:tä.
--program-2022Käytä Token-2022:ta (TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb).
--output <FORMAT>Palauta json tai json-compact, kun tuettu.
--with-compute-unit-limit <UNITS>Aseta transaktion laskentayksikkörajoitus.
--with-compute-unit-price <MICRO_LAMPORTS>Aseta prioriteettihinta laskentayksikköä kohden.
-v, --verboseNäytä lisätulostetta.
-V, --versionTulosta asennetun CLI:n versio.

Oletusohjelma on alkuperäinen Token Program. Käytä --program-2022-valintaa Token-2022-mintin tai -tilin yhteydessä, myös sitä luettaessa. Komento epäonnistuu, jos valittu ohjelma ei omista annettua osoitetta.

Luo token ja käytä sitä

Komennot tulostavat luodut osoitteet. Tallenna create-token-komennon palauttama mint-osoite seuraavia komentoja varten.

# Create a six-decimal mint under the original Token Program.
spl-token --url devnet create-token --decimals 6
# Create the default signer's associated token account for the mint.
spl-token --url devnet create-account <MINT_ADDRESS>
# Mint 100 tokens to that associated token account.
spl-token --url devnet mint <MINT_ADDRESS> 100
# Read supply, balance, and complete mint or account details.
spl-token --url devnet supply <MINT_ADDRESS>
spl-token --url devnet balance <MINT_ADDRESS>
spl-token --url devnet display <MINT_OR_TOKEN_ACCOUNT_ADDRESS>
# Transfer tokens to a wallet and create its associated account if needed.
spl-token --url devnet transfer \
<MINT_ADDRESS> \
10 \
<RECIPIENT_WALLET_ADDRESS> \
--fund-recipient

Määrät ovat käyttöliittymän token-määriä, jotka on säädetty mintin desimaalien mukaan. Komennot kuten transfer, burn ja unwrap-sol hyväksyvät arvon ALL, kun se on esitetty niiden ohjeessa.

Luo Token-2022-mint

Laajennukset varaavat mintille tai tilille lisätilaa, ja ne on yleensä valittava mintin luontihetkellä. Tämä esimerkki luo kuuden desimaalin mintin, jossa on sisäisten metatietojen tuki:

spl-token --program-2022 create-token \
--decimals 6 \
--enable-metadata
spl-token --program-2022 initialize-metadata \
<MINT_ADDRESS> \
"Example Token" \
EXAMPLE \
https://example.com/token.json

Yleisiä create-token-komennon laajennusvalintoja ovat:

  • --enable-close
  • --enable-confidential-transfers auto|manual
  • --enable-freeze
  • --enable-group ja --enable-member
  • --enable-metadata
  • --enable-non-transferable
  • --enable-pause
  • --enable-permanent-delegate
  • --enable-permissioned-burn
  • --enable-transfer-hook tai --transfer-hook <PROGRAM_ID>
  • --interest-rate <BASIS_POINTS>
  • --transfer-fee-basis-points <BASIS_POINTS> yhdessä valinnan --transfer-fee-maximum-fee <AMOUNT> kanssa
  • --ui-amount-multiplier <MULTIPLIER>

Yhdistä vain laajennuksia, joiden yhteiskäytön Token-2022-ohjelma sallii. Tutustu asiaankuuluvaan Token-2022-laajennusoppaaseen ennen kuin luot peruuttamattoman mint-määrityksen.

Hallitse valtuuksia ja delegaatteja

# Change the mint authority.
spl-token authorize <MINT_ADDRESS> mint <NEW_AUTHORITY_ADDRESS>
# Permanently remove the mint authority.
spl-token authorize <MINT_ADDRESS> mint --disable
# Let a delegate spend up to 25 tokens from one token account.
spl-token approve \
<TOKEN_ACCOUNT_ADDRESS> \
25 \
<DELEGATE_ADDRESS>
# Remove the current delegate.
spl-token revoke <TOKEN_ACCOUNT_ADDRESS>

authorize tukee mint-, freeze-, owner-, close- ja laajennuskohtaisia valtuustyyppejä. Valtuuden poistaminen --disable-valinnalla on pysyvää, jos mikään muu ohjelmamekanismi ei voi palauttaa sitä.

Jäädytä, polta ja sulje

spl-token freeze <TOKEN_ACCOUNT_ADDRESS>
spl-token thaw <TOKEN_ACCOUNT_ADDRESS>
spl-token burn <TOKEN_ACCOUNT_ADDRESS> 5
# A token account must normally have a zero token balance before closing.
spl-token close --address <TOKEN_ACCOUNT_ADDRESS>

burn pienentää sekä tilin saldoa että kokonaistarjontaa. close palauttaa tilin jäljellä olevat lamports määritetylle vastaanottajalle; se ei palauta poltettuja tokeneita.

Kääri SOL ja pura se

# Create or fund the owner's wrapped SOL token account.
spl-token wrap 1
# Unwrap part of the wrapped SOL balance.
spl-token unwrap-sol 0.25
# Close the wrapped SOL account and return its full lamport balance.
spl-token unwrap

Käytä sync-native-komentoa, kun olet siirtänyt lamports suoraan käärittyyn SOL token account -tiliin, jotta sen token-määrä vastaa taustalla olevaa lamports-määrää.

Multisig-allekirjoitus

Luo M-of-N Token Program -multisig, jossa on enintään 11 jäsentä:

spl-token create-multisig \
2 \
<MEMBER_1_ADDRESS> \
<MEMBER_2_ADDRESS> \
<MEMBER_3_ADDRESS>

Kun transaktiota ohjaa kyseinen multisig, anna multisig-osoite asianomaisena valtuutena ja toimita jäsenten keypair-tiedot toistamalla --multisig-signer-arvoja. Tarkista kohdekomennon ohje, koska sen ensisijainen valtuusvalinta vaihtelee toiminnon mukaan.

Luottamukselliset saldot

Luottamuksellisten saldojen komennot vaativat Token-2022-mintin, joka on määritetty luottamuksellisia siirtoja varten, sekä määritetyn vastaanottajatilin.

spl-token --program-2022 configure-confidential-transfer-account \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 deposit-confidential-tokens \
<MINT_ADDRESS> \
10 \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 apply-pending-balance \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 withdraw-confidential-tokens \
<MINT_ADDRESS> \
5 \
--address <TOKEN_ACCOUNT_ADDRESS>
spl-token --program-2022 transfer \
<MINT_ADDRESS> \
1 \
<RECIPIENT_ADDRESS> \
--confidential

Komennoissa configure-confidential-transfer-account ja apply-pending-balance anna joko --address <TOKEN_ACCOUNT_ADDRESS> tai paikkaan perustuva <MINT_ADDRESS>, ei molempia. Paikkaan perustuva muoto käyttää omistajan associated token account -tiliä. Talletus ja nosto ottavat aina mintin ja hyväksyvät --address-valinnan, jolla kyseinen oletustili voidaan korvata.

Komennoilla enable-confidential-credits, disable-confidential-credits, enable-non-confidential-credits ja disable-non-confidential-credits hallitaan, mitä talletuksia tili hyväksyy. Nämä asetukset vaikuttavat tilin yksityisyyteen ja maksujen yhteensopivuuteen; tarkista tili ennen niiden muuttamista.

Täydellinen komentohakemisto

Seuraava hakemisto sisältää kaikki spl-token-cli v5.6.1:n ylimmän tason komennot.

KomentoKuvaus
accountsLuettele lompakon omistamat token account -tilit, tarvittaessa mintin mukaan suodatettuina.
addressTulosta valitun lompakon osoite tai sen associated token account -osoite.
apply-pending-balanceSiirrä odottavat luottamukselliset tokenit käytettävissä olevaan luottamukselliseen saldoon.
approveHyväksy delegaatti ja käyttöoikeuden määrä token account -tilille.
authorizeMuuta tai poista käytöstä mintin, tilin tai laajennuksen valtuus.
balanceNäytä token account -tilin saldo.
benchSuorita token-suorituskykytestauskomentoja.
burnTuhoa tilin tokeneita ja pienennä mintin tarjontaa.
closeSulje kelpaava token account ja palauta sen lamports.
close-mintSulje Token-2022-mint, jolle on määritetty close-mint-laajennus.
configure-confidential-transfer-accountMääritä tili käyttämään luottamuksellisia siirtoja.
create-accountLuo associated token account tai apu-token account.
create-multisigLuo M-of-N Token Program -multisig.
create-tokenLuo mint, tarvittaessa Token-2022-laajennuksilla.
deposit-confidential-tokensSiirrä ei-luottamukselliset tokenit odottavaan luottamukselliseen saldoon.
disable-confidential-creditsHylkää tilille saapuvat luottamukselliset siirrot.
disable-cpi-guardPoista CPI Guard käytöstä tililtä.
disable-non-confidential-creditsHylkää luottamukselliselle tilille saapuvat ei-luottamukselliset siirrot.
disable-required-transfer-memosLopeta memojen vaatiminen saapuviin siirtoihin.
displayNäytä mintin, token account -tilin tai multisigin täydet tiedot.
enable-confidential-creditsHyväksy määritetylle tilille saapuvat luottamukselliset siirrot.
enable-cpi-guardRajoita tiettyjä token-toimintoja, kun ne kutsutaan CPI:n kautta.
enable-non-confidential-creditsHyväksy luottamukselliselle tilille saapuvat ei-luottamukselliset siirrot.
enable-required-transfer-memosVaadi saapuvilta siirroilta memo.
freezeJäädytä token account mintin freeze-valtuuden avulla.
gcSulje tarpeettomat token account -tilit ja yhdistä saldot mahdollisuuksien mukaan.
helpTulosta juuritason tai komennon ohje.
initialize-groupAlusta mintin Token-2022-ryhmämääritys.
initialize-memberLisää Token-2022-mint ryhmän jäseneksi.
initialize-metadataAlusta sisäiset Token-2022-metatiedot.
mintLuo uusia tokeniyksiköitä mint-valtuuden avulla.
pauseKeskeytä mint-, burn- ja transfer-toiminnot keskeytettävälle Token-2022-mintille.
resumeJatka keskeytetyn Token-2022-mintin toimintoja.
revokePoista token account -tilin delegaatti.
set-interest-ratePäivitä korkoa tuottavan mintin korko.
set-transfer-feeAjasta uudet siirtomaksun parametrit.
set-transfer-hookMuuta mintin transfer hook -ohjelman ID:tä.
supplyNäytä mintin kokonaistarjonta.
sync-nativeSynkronisoi käärityn SOL-tilin määrä vastaamaan sen lamports-määrää.
thawSulata jäädytetty token account.
transferSiirrä tokeneita token account -tilille tai lompakkoon.
unwrapSulje kääritty SOL-tili ja palauta kaikki lamports.
unwrap-solPoista osa tai kaikki SOL käärityltä SOL-tililtä.
update-confidential-transfer-settingsPäivitä mintin luottamuksellisten siirtojen hyväksyntä- tai auditoija-asetukset.
update-default-account-stateMuuta mintin oletustilaa uusille token account -tileille.
update-group-addressMuuta mintin ryhmäosoittimen osoitetta.
update-group-max-sizeMuuta token-ryhmän jäsenten enimmäismäärää.
update-member-addressMuuta mintin ryhmäjäsenosoittimen osoitetta.
update-metadataMuuta tai poista sisäisiä metatietokenttiä.
update-metadata-addressMuuta mintin metatieto-osoittimen osoitetta.
update-ui-amount-multiplierAjasta uusi skaalatun UI-määrän kerroin.
withdraw-confidential-tokensSiirrä luottamukselliset tokenit takaisin ei-luottamukselliseen saldoon.
withdraw-excess-lamportsNosta vuokravapaan saldon ylittävät lamports Token Program -ohjelman omistamalta tililtä.
withdraw-withheld-tokensKerää token account -tileille tai mintille pidätetyt siirtomaksut.
wrapKääri SOL natiivin mintin token account -tiliin.

Jäsennelty ja offline-allekirjoitus

Käytä jäsenneltyä tulostetta näytettävän tekstin jäsentämisen sijaan:

spl-token accounts --output json
spl-token display <MINT_ADDRESS> --output json-compact

Transaktioita tuottavat komennot tukevat yleisesti valintoja --sign-only, --blockhash, --signer <PUBKEY=SIGNATURE>, --nonce ja --nonce-authority. Tarkat offline-syötteet riippuvat komennosta, mintin desimaaleista ja valtuusjärjestelystä, joten luo allekirjoittamaton viesti kyseisen komennon --help-ohjeiden mukaan ja tarkista jokainen osoite ennen allekirjoitusten keräämistä.

Is this page helpful?

Sisällysluettelo

Muokkaa sivua
© 2026 Solana Foundation. Kaikki oikeudet pidätetään.