L'interfaccia a riga di comando solana configura la connessione a un cluster, legge
lo stato della rete, invia SOL, gestisce i durable nonce, distribuisce i programmi e gestisce
gli account di stake e di voto.
Questo riferimento segue
Agave v4.2.1. Esegui
solana --version per controllare la versione installata e usa --help per vedere le
opzioni esatte disponibili in quella versione.
I comandi che creano, trasferiscono, autorizzano, prelevano o distribuiscono inviano transazioni. Verifica il cluster e il firmatario configurati prima di eseguirli. I token di Devnet e Testnet non hanno alcun valore; i comandi su Mainnet usano SOL reali.
Struttura dei comandi
solana [GLOBAL_OPTIONS] <COMMAND> [COMMAND_OPTIONS]
Ottieni aiuto a qualsiasi livello:
solana --helpsolana transfer --helpsolana address-lookup-table extend --help
Opzioni globali
Le opzioni globali possono essere inserite prima del comando. La guida specifica del comando ripete le opzioni che si applicano a quel comando.
| Opzione | Scopo |
|---|---|
-u, --url <URL_OR_MONIKER> | Seleziona un URL RPC oppure mainnet-beta, testnet, devnet o localhost. |
--ws <URL> | Sovrascrive l'endpoint WebSocket. |
-k, --keypair <KEYPAIR> | Seleziona un file keypair, ASK, lo stdin (-) o un URL di firmatario supportato. |
-C, --config <FILEPATH> | Usa un file di configurazione della CLI diverso. |
--commitment <LEVEL> | Legge con livello di commitment processed, confirmed o finalized. |
--output <FORMAT> | Restituisce json o json-compact dove supportato. |
--skip-preflight | Invia senza simulazione RPC. Usalo solo se si comprendono i compromessi in caso di errore. |
--use-tpu-client | Invia le transazioni tramite il client TPU. |
--no-address-labels | Stampa gli indirizzi senza etichette locali. |
--skip-seed-phrase-validation | Consente una frase di recupero non presente nell'elenco inglese BIP39. |
-v, --verbose | Mostra un output aggiuntivo del comando. |
-V, --version | Stampa la versione della CLI installata. |
Configurare la CLI
# Inspect the effective configuration.solana config get# Use Devnet and a specific signer by default.solana config set --url devnetsolana config set --keypair ./devnet-keypair.json# Override defaults for one command.solana --url mainnet-beta --keypair usb://ledger address
La configurazione contiene un URL RPC, un URL WebSocket, il firmatario predefinito e il commitment. Un'opzione da riga di comando sovrascrive il valore salvato per quella singola invocazione.
Flussi di lavoro comuni per account e transazioni
# Print the default signer's address and balance.solana addresssolana balance# Read an account as JSON.solana account <ACCOUNT_ADDRESS> --output json# Request Devnet SOL.solana airdrop 1 --url devnet# Send SOL and then confirm the returned signature.solana transfer <RECIPIENT_ADDRESS> 0.1 --allow-unfunded-recipientsolana confirm <TRANSACTION_SIGNATURE># Inspect recent activity and stream logs mentioning an address.solana transaction-history <ADDRESS> --limit 20solana logs <ADDRESS>
transfer accetta SOL per impostazione predefinita. Usa ALL come importo per trasferire il saldo
disponibile al netto delle commissioni. Per esempi sui token, consulta la
guida rapida ai token.
Flussi di lavoro dei programmi
# Deploy or upgrade an SBF program.solana program deploy ./target/deploy/my_program.so# Inspect the deployed program and list programs controlled by the signer.solana program show <PROGRAM_ID>solana program show --programs# Close a program buffer and recover its lamports.solana program close <BUFFER_ADDRESS>
Passa --program-id <KEYPAIR_OR_ADDRESS> quando un deployment deve usare un
ID di programma noto. --final rende immutabile un nuovo deployment; leggi attentamente la sua guida
prima di usarlo, perché l'upgrade authority non può essere ripristinata.
Flussi di lavoro dei durable nonce
solana-keygen new --outfile nonce-account.jsonsolana create-nonce-account nonce-account.json 0.1solana nonce nonce-account.jsonsolana new-nonce nonce-account.jsonsolana withdraw-from-nonce-account nonce-account.json <RECIPIENT_ADDRESS> ALL
Usa authorize-nonce-account per cambiare la nonce authority e nonce-account
per ispezionare lo stato completo dell'account. Le transazioni che usano un nonce accettano anche
--nonce e --nonce-authority nei comandi supportati.
Flussi di lavoro dello stake
solana-keygen new --outfile stake-account.jsonsolana create-stake-account stake-account.json 1solana delegate-stake stake-account.json <VOTE_ACCOUNT_ADDRESS>solana stake-account stake-account.jsonsolana deactivate-stake stake-account.jsonsolana withdraw-stake stake-account.json <RECIPIENT_ADDRESS> ALL
La disattivazione si completa al confine di un epoch e può richiedere più di un epoch.
Usa stakes, validators, stake-history e stake-minimum-delegation per
ispezionare lo stato del cluster e delle deleghe prima di inviare modifiche.
Utilità per gli indirizzi
# Derive a PDA from typed seeds.solana find-program-derived-address \<PROGRAM_ID> \string:profile \pubkey:<OWNER_ADDRESS># Create and extend an address lookup table.solana address-lookup-table createsolana address-lookup-table extend \<LOOKUP_TABLE_ADDRESS> \--addresses <ADDRESS_1>,<ADDRESS_2>
I seed dei PDA usano PREFIX:VALUE. I prefissi supportati includono string, pubkey,
hex, u8 e codifiche di interi con segno o senza segno a larghezza fissa, come
u64le.
Messaggi off-chain e completamento della shell
solana sign-offchain-message "terms accepted"solana verify-offchain-signature \"terms accepted" \<SIGNATURE> \--signer <SIGNER_ADDRESS># Print a completion script for the current shell.solana completion --shell zsh
Indice completo dei comandi
Il seguente indice include ogni comando di primo livello in Agave v4.2.1. Comandi
come program, config, feature e address-lookup-table contengono
comandi annidati; esegui <command> --help per elencarli.
| Comando | Descrizione |
|---|---|
account | Mostra i lamport, il proprietario, i dati e lo stato eseguibile di un account. |
address | Stampa la chiave pubblica del firmatario selezionato. |
address-lookup-table | Crea, estende, blocca, disattiva, chiude e ispeziona le address lookup table. |
airdrop | Richiede SOL a un faucet del cluster. |
alpenglow-genesis-info | Legge le informazioni sul certificato genesis di Alpenglow. |
authorize-nonce-account | Assegna l'authority di un account durable nonce. |
balance | Mostra il saldo in SOL di un account. |
block | Recupera un blocco confermato in base allo slot. |
block-height | Mostra l'altezza di blocco corrente. |
block-production | Mostra la produzione di blocchi del leader per un intervallo di slot. |
block-time | Stima il momento di produzione di un blocco. |
catchup | Attende che un validator si allinei al cluster. |
close-vote-account | Chiude un account di voto e preleva i fondi rimanenti. |
cluster-date | Stima la data del cluster dal tempo di genesis e dal tempo di rete. |
cluster-version | Mostra la versione del software dell'entrypoint del cluster. |
completion | Genera uno script di completamento per la shell. |
config | Legge o imposta i valori predefiniti della CLI. |
confirm | Controlla lo stato di conferma della firma di una transazione. |
create-address-with-seed | Deriva un indirizzo di sistema da una base, un seed e un ID di programma. |
create-nonce-account | Crea e inizializza un account durable nonce. |
create-stake-account | Crea un account di stake. |
create-stake-account-checked | Crea un account di stake verificando la withdraw authority come firmatario. |
create-vote-account | Crea un account di voto del validator. |
deactivate-stake | Avvia la disattivazione dello stake delegato. |
decode-transaction | Decodifica una transazione serializzata. |
delegate-stake | Delega un account di stake a un account di voto. |
epoch | Mostra il numero dell'epoch corrente. |
epoch-info | Mostra informazioni su epoch, slot, altezza di blocco e numero di transazioni. |
feature | Ispeziona e gestisce gli account delle feature del runtime. |
find-program-derived-address | Deriva un PDA e il bump canonico a partire da seed tipizzati. |
first-available-block | Mostra il primo blocco completo conservato dal nodo RPC. |
genesis-hash | Mostra l'hash di genesis del cluster. |
gossip | Elenca i nodi visibili tramite gossip. |
help | Stampa la guida generale o quella di un comando. |
inflation | Mostra informazioni su governor, tasso o ricompense dell'inflazione. |
largest-accounts | Elenca gli account più grandi del cluster. |
leader-schedule | Visualizza la pianificazione dei leader. |
live-slots | Trasmette in streaming l'avanzamento dello slot corrente. |
logs | Trasmette in streaming i log delle transazioni, con filtro opzionale per indirizzo. |
merge-stake | Unisce account di stake compatibili. |
new-nonce | Avanza un durable nonce. |
nonce | Stampa il valore di un durable nonce. |
nonce-account | Mostra lo stato completo di un account durable nonce. |
program | Distribuisce, aggiorna, ispeziona, esporta, imposta l'authority o chiude programmi e buffer. |
recent-prioritization-fees | Mostra le commissioni di prioritizzazione recenti per gli account scrivibili. |
rent | Calcola il minimo esente da rent per la dimensione dei dati di un account. |
resolve-signer | Risolve un riferimento generico a un firmatario, come un URL Ledger, nel suo percorso specifico. |
sign-offchain-message | Firma un messaggio off-chain UTF-8. |
slot | Mostra lo slot corrente. |
split-stake | Sposta lamport da un account di stake a un altro. |
stake-account | Mostra le authority, il saldo e lo stato di delega di un account di stake. |
stake-authorize | Cambia una stake authority o una withdraw authority. |
stake-authorize-checked | Cambia una stake authority verificando la nuova authority come firmatario. |
stake-history | Mostra la cronologia di attivazione e disattivazione dello stake del cluster. |
stake-minimum-delegation | Mostra la delega di stake minima del cluster. |
stake-set-lockup | Imposta il lockup di un account di stake. |
stake-set-lockup-checked | Imposta un lockup verificando il nuovo custode come firmatario. |
stakes | Elenca gli account di stake, con filtro opzionale per validator o authority. |
supply | Mostra l'offerta di SOL circolante, non circolante e totale. |
transaction-count | Mostra il numero di transazioni del cluster. |
transaction-history | Elenca le transazioni che coinvolgono un indirizzo, dalla più recente alla meno recente. |
transfer | Trasferisce SOL tra account di sistema. |
upgrade-nonce-account | Aggiorna in modo idempotente un account nonce legacy. |
validator-info | Pubblica o legge le informazioni del validator. |
validators | Mostra un riepilogo di stake, commissioni, skip rate e versione dei validator. |
verify-offchain-signature | Verifica un messaggio off-chain firmato. |
vote-account | Mostra le authority, la commissione, i crediti e i voti di un account di voto. |
vote-authorize-voter | Cambia la voter authority di un account di voto. |
vote-authorize-voter-checked | Cambia la voter authority verificando la nuova authority come firmatario. |
vote-authorize-withdrawer | Cambia la withdraw authority di un account di voto. |
vote-authorize-withdrawer-checked | Cambia la withdraw authority verificando la nuova authority come firmatario. |
vote-update-commission | Cambia la commissione di un account di voto. |
vote-update-validator | Cambia l'identità del validator assegnata a un account di voto. |
withdraw-from-nonce-account | Preleva una parte o la totalità dei SOL da un account durable nonce. |
withdraw-from-vote-account | Preleva lamport da un account di voto. |
withdraw-stake | Preleva SOL inattivi da un account di stake. |
Output per gli script
Usa --output json o --output json-compact dove supportato, invece di
eseguire il parsing dell'output leggibile:
solana epoch-info --output jsonsolana account <ACCOUNT_ADDRESS> --output json-compactsolana validators --output json > validators.json
Non tutti i comandi supportano l'output strutturato. Controlla la guida del comando prima di farvi affidamento nell'automazione e considera uno stato di uscita diverso da zero come un errore.
Is this page helpful?