La interfaz de línea de comandos solana configura la conexión a un clúster, lee
el estado de la red, envía SOL, administra nonces duraderos, despliega programas y opera
cuentas de stake y de voto.
Esta referencia sigue
Agave v4.2.1. Ejecuta
solana --version para comprobar la versión instalada y usa --help para ver las
opciones exactas disponibles en esa versión.
Los comandos que crean, transfieren, autorizan, retiran o despliegan envían transacciones. Confirma el clúster y el firmante configurados antes de ejecutarlos. Los tokens de Devnet y Testnet no tienen valor; los comandos de Mainnet usan SOL real.
Estructura de los comandos
solana [GLOBAL_OPTIONS] <COMMAND> [COMMAND_OPTIONS]
Obtén ayuda en cualquier nivel:
solana --helpsolana transfer --helpsolana address-lookup-table extend --help
Opciones globales
Las opciones globales se pueden colocar antes del comando. La ayuda específica de cada comando repite las opciones que le corresponden.
| Opción | Finalidad |
|---|---|
-u, --url <URL_OR_MONIKER> | Selecciona una URL de RPC o mainnet-beta, testnet, devnet o localhost. |
--ws <URL> | Sustituye el endpoint de WebSocket. |
-k, --keypair <KEYPAIR> | Selecciona un archivo keypair, ASK, stdin (-) o una URL de firmante compatible. |
-C, --config <FILEPATH> | Usa un archivo de configuración de la CLI diferente. |
--commitment <LEVEL> | Lee con nivel de confirmación processed, confirmed o finalized. |
--output <FORMAT> | Devuelve json o json-compact donde sea compatible. |
--skip-preflight | Envía sin simulación RPC. Úsalo solo si comprendes el riesgo de posibles fallos. |
--use-tpu-client | Envía las transacciones a través del cliente TPU. |
--no-address-labels | Imprime las direcciones sin etiquetas locales. |
--skip-seed-phrase-validation | Permite una frase de recuperación que no esté en la lista en inglés de BIP39. |
-v, --verbose | Muestra salida adicional del comando. |
-V, --version | Imprime la versión instalada de la CLI. |
Configurar 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 configuración contiene una URL de RPC, una URL de WebSocket, el firmante predeterminado y el nivel de confirmación. Una opción de línea de comandos sustituye el valor guardado en esa invocación.
Flujos de trabajo habituales de cuentas y transacciones
# 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 acepta SOL de forma predeterminada. Usa ALL como importe para mover el saldo
disponible después de las comisiones. Para ver ejemplos con tokens, consulta el
inicio rápido de tokens.
Flujos de trabajo de programas
# 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>
Pasa --program-id <KEYPAIR_OR_ADDRESS> cuando un despliegue deba usar un
ID de programa conocido. --final hace inmutable un despliegue nuevo; lee su ayuda con atención
antes de usarlo, porque la autoridad de actualización no se puede restaurar.
Flujos de trabajo de nonces duraderos
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 para cambiar la autoridad del nonce y nonce-account
para inspeccionar el estado completo de la cuenta. Las transacciones que usan un nonce también aceptan
--nonce y --nonce-authority en los comandos compatibles.
Flujos de trabajo de 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 desactivación se completa en el límite de un epoch y puede tardar más de un epoch.
Usa stakes, validators, stake-history y stake-minimum-delegation para
inspeccionar el estado del clúster y de la delegación antes de enviar cambios.
Utilidades de direcciones
# 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>
Los seeds de PDA usan PREFIX:VALUE. Los prefijos admitidos incluyen string, pubkey,
hex, u8 y codificaciones de enteros con o sin signo de ancho fijo, como
u64le.
Mensajes off-chain y autocompletado del 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
Índice completo de comandos
El siguiente índice incluye todos los comandos de nivel superior de Agave v4.2.1. Comandos
como program, config, feature y address-lookup-table contienen
comandos anidados; ejecuta <command> --help para listarlos.
| Comando | Descripción |
|---|---|
account | Muestra los lamports, el propietario, los datos y el estado ejecutable de una cuenta. |
address | Imprime la clave pública del firmante seleccionado. |
address-lookup-table | Crea, amplía, congela, desactiva, cierra e inspecciona tablas de búsqueda de direcciones. |
airdrop | Solicita SOL a un faucet del clúster. |
alpenglow-genesis-info | Lee información sobre el certificado génesis de Alpenglow. |
authorize-nonce-account | Asigna una autoridad a una cuenta de nonce duradero. |
balance | Muestra el saldo de SOL de una cuenta. |
block | Obtiene un bloque confirmado por slot. |
block-height | Muestra la altura de bloque actual. |
block-production | Muestra la producción de bloques del líder para un rango de slots. |
block-time | Estima la hora de producción de un bloque. |
catchup | Espera a que un validator se ponga al día con el clúster. |
close-vote-account | Cierra una cuenta de voto y retira los fondos restantes. |
cluster-date | Estima la fecha del clúster a partir de la hora génesis y la hora de la red. |
cluster-version | Muestra la versión del software del entrypoint del clúster. |
completion | Genera un script de autocompletado del shell. |
config | Obtiene o establece los valores predeterminados de la CLI. |
confirm | Comprueba el estado de confirmación de la firma de una transacción. |
create-address-with-seed | Deriva una dirección del sistema a partir de una base, un seed y un ID de programa. |
create-nonce-account | Crea e inicializa una cuenta de nonce duradero. |
create-stake-account | Crea una cuenta de stake. |
create-stake-account-checked | Crea una cuenta de stake verificando la autoridad de retiro como firmante. |
create-vote-account | Crea una cuenta de voto de validator. |
deactivate-stake | Inicia la desactivación del stake delegado. |
decode-transaction | Decodifica una transacción serializada. |
delegate-stake | Delega una cuenta de stake en una cuenta de voto. |
epoch | Muestra el número de epoch actual. |
epoch-info | Muestra información de epoch, slot, altura de bloque y recuento de transacciones. |
feature | Inspecciona y administra las cuentas de funcionalidades del runtime. |
find-program-derived-address | Deriva una PDA y el bump canónico a partir de seeds tipados. |
first-available-block | Muestra el primer bloque completo conservado por el nodo RPC. |
genesis-hash | Muestra el hash génesis del clúster. |
gossip | Lista los nodos visibles a través de gossip. |
help | Imprime la ayuda general o la de un comando. |
inflation | Muestra información sobre el gobernador de inflación, la tasa o las recompensas. |
largest-accounts | Lista las cuentas más grandes del clúster. |
leader-schedule | Muestra el calendario de líderes. |
live-slots | Transmite en tiempo real la progresión del slot actual. |
logs | Transmite en tiempo real los registros de transacciones, con filtro opcional por dirección. |
merge-stake | Fusiona cuentas de stake compatibles. |
new-nonce | Avanza un nonce duradero. |
nonce | Imprime el valor de un nonce duradero. |
nonce-account | Muestra el estado completo de una cuenta de nonce duradero. |
program | Despliega, actualiza, inspecciona, vuelca, establece la autoridad o cierra programas y buffers. |
recent-prioritization-fees | Muestra las comisiones de priorización recientes de las cuentas con permiso de escritura. |
rent | Calcula el mínimo exento de renta para un tamaño de datos de cuenta. |
resolve-signer | Resuelve una referencia general de firmante, como una URL de Ledger, a su ruta específica. |
sign-offchain-message | Firma un mensaje off-chain en UTF-8. |
slot | Muestra el slot actual. |
split-stake | Divide lamports de una cuenta de stake y los pasa a otra. |
stake-account | Muestra las autoridades, el saldo y el estado de delegación de una cuenta de stake. |
stake-authorize | Cambia una autoridad de stake o de retiro. |
stake-authorize-checked | Cambia una autoridad de stake verificando la nueva autoridad como firmante. |
stake-history | Muestra el historial de activación y desactivación de stake del clúster. |
stake-minimum-delegation | Muestra la delegación mínima de stake del clúster. |
stake-set-lockup | Establece el bloqueo de una cuenta de stake. |
stake-set-lockup-checked | Establece un bloqueo verificando al nuevo custodio como firmante. |
stakes | Lista las cuentas de stake, con filtro opcional por validator o autoridad. |
supply | Muestra el suministro de SOL circulante, no circulante y total. |
transaction-count | Muestra el recuento de transacciones del clúster. |
transaction-history | Lista las transacciones de una dirección, de la más reciente a la más antigua. |
transfer | Transfiere SOL entre cuentas del sistema. |
upgrade-nonce-account | Actualiza de forma idempotente una cuenta de nonce heredada. |
validator-info | Publica o lee información de un validator. |
validators | Muestra un resumen de stake, comisión, tasa de omisión y versión de los validator. |
verify-offchain-signature | Verifica un mensaje off-chain firmado. |
vote-account | Muestra las autoridades, la comisión, los créditos y los votos de una cuenta de voto. |
vote-authorize-voter | Cambia la autoridad de votante de una cuenta de voto. |
vote-authorize-voter-checked | Cambia la autoridad de votante verificando la nueva autoridad como firmante. |
vote-authorize-withdrawer | Cambia la autoridad de retiro de una cuenta de voto. |
vote-authorize-withdrawer-checked | Cambia la autoridad de retiro verificando la nueva autoridad como firmante. |
vote-update-commission | Cambia la comisión de una cuenta de voto. |
vote-update-validator | Cambia la identidad del validator asignada a una cuenta de voto. |
withdraw-from-nonce-account | Retira una parte o la totalidad de los SOL de una cuenta de nonce duradero. |
withdraw-from-vote-account | Retira lamports de una cuenta de voto. |
withdraw-stake | Retira SOL inactivos de una cuenta de stake. |
Salida para scripts
Usa --output json o --output json-compact donde sea compatible en lugar de
analizar la salida legible por personas:
solana epoch-info --output jsonsolana account <ACCOUNT_ADDRESS> --output json-compactsolana validators --output json > validators.json
No todos los comandos admiten salida estructurada. Consulta la ayuda del comando antes de depender de ella en automatizaciones y trata un estado de salida distinto de cero como un fallo.
Is this page helpful?