solana komut satırı arayüzü, bir cluster bağlantısını yapılandırır, ağ durumunu okur,
SOL gönderir, kalıcı nonce'ları yönetir, programları dağıtır ve
stake ile vote hesaplarını işletir.
Bu başvuru kılavuzu
Agave v4.2.1 sürümünü temel alır. Yüklü sürümü kontrol etmek için
solana --version komutunu çalıştırın; ilgili sürümde kullanılabilen tam
seçenekler için --help kullanın.
Oluşturan, aktaran, yetkilendiren, çeken veya dağıtan komutlar işlem gönderir. Bunları çalıştırmadan önce yapılandırılmış cluster'ı ve imzalayanı doğrulayın. Devnet ve Testnet token'larının değeri yoktur; Mainnet komutları gerçek SOL kullanır.
Komut yapısı
solana [GLOBAL_OPTIONS] <COMMAND> [COMMAND_OPTIONS]
Her düzeyde yardım alın:
solana --helpsolana transfer --helpsolana address-lookup-table extend --help
Genel seçenekler
Genel seçenekler komuttan önce yerleştirilebilir. Komuta özel yardım, o komut için geçerli olan seçenekleri tekrar listeler.
| Seçenek | Amaç |
|---|---|
-u, --url <URL_OR_MONIKER> | Bir RPC URL'si veya mainnet-beta, testnet, devnet ya da localhost seçin. |
--ws <URL> | WebSocket uç noktasını geçersiz kılar. |
-k, --keypair <KEYPAIR> | Bir keypair dosyası, ASK, stdin (-) veya desteklenen bir imzalayıcı URL'si seçin. |
-C, --config <FILEPATH> | Farklı bir CLI yapılandırma dosyası kullanır. |
--commitment <LEVEL> | processed, confirmed veya finalized commitment düzeyinde okur. |
--output <FORMAT> | Desteklenen yerlerde json veya json-compact döndürür. |
--skip-preflight | RPC simülasyonu olmadan gönderir. Yalnızca başarısızlık risklerini anladığınızda kullanın. |
--use-tpu-client | İşlemleri TPU istemcisi üzerinden gönderir. |
--no-address-labels | Adresleri yerel etiketler olmadan yazdırır. |
--skip-seed-phrase-validation | BIP39 İngilizce listesi dışındaki bir kurtarma ifadesine izin verir. |
-v, --verbose | Ek komut çıktısını gösterir. |
-V, --version | Yüklü CLI sürümünü yazdırır. |
CLI'ı yapılandırma
# 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
Yapılandırma; bir RPC URL'si, WebSocket URL'si, varsayılan imzalayıcı ve commitment içerir. Bir komut satırı seçeneği, ilgili çağrı için kayıtlı değeri geçersiz kılar.
Yaygın hesap ve işlem iş akışları
# 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 varsayılan olarak SOL kabul eder. Ücretlerden sonra kullanılabilir
bakiyenin tamamını taşımak için tutar olarak ALL kullanın. Token örnekleri için
token hızlı başlangıç kılavuzuna bakın.
Program iş akışları
# 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>
Bir dağıtımın bilinen bir program kimliğini kullanması gerektiğinde
--program-id <KEYPAIR_OR_ADDRESS> iletin. --final, yeni bir dağıtımı değiştirilemez hâle getirir;
yükseltme yetkisi geri yüklenemeyeceği için kullanmadan önce yardım çıktısını
dikkatle okuyun.
Kalıcı nonce iş akışları
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
Nonce yetkilisini değiştirmek için authorize-nonce-account, hesabın tam durumunu
incelemek için nonce-account kullanın. Nonce kullanan işlemler, desteklenen komutlarda
ayrıca --nonce ve --nonce-authority seçeneklerini de kabul eder.
Stake iş akışları
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
Devre dışı bırakma bir epoch sınırında tamamlanır ve birden fazla epoch sürebilir.
Değişiklikleri göndermeden önce cluster ve delegasyon durumunu incelemek için
stakes, validators, stake-history ve stake-minimum-delegation komutlarını kullanın.
Adres yardımcı araçları
# 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>
PDA seed'leri PREFIX:VALUE biçimini kullanır. Desteklenen önekler arasında string, pubkey,
hex, u8 ve u64le gibi sabit genişlikli işaretli veya işaretsiz
tamsayı kodlamaları bulunur.
Zincir dışı mesajlar ve kabuk tamamlama
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
Eksiksiz komut dizini
Aşağıdaki dizin, Agave v4.2.1'deki tüm üst düzey komutları içerir. program,
config, feature ve address-lookup-table gibi komutlar iç içe komutlar barındırır;
bunları listelemek için <command> --help çalıştırın.
| Komut | Açıklama |
|---|---|
account | Bir hesabın lamport'larını, sahibini, verisini ve çalıştırılabilir durumunu gösterir. |
address | Seçili imzalayıcının genel anahtarını yazdırır. |
address-lookup-table | Adres arama tablolarını oluşturur, genişletir, dondurur, devre dışı bırakır, kapatır ve inceler. |
airdrop | Bir cluster faucet'inden SOL ister. |
alpenglow-genesis-info | Alpenglow genesis sertifikası hakkındaki bilgileri okur. |
authorize-nonce-account | Kalıcı nonce hesabı yetkilisini atar. |
balance | Bir hesabın SOL bakiyesini gösterir. |
block | Onaylanmış bir bloğu slot'a göre getirir. |
block-height | Geçerli blok yüksekliğini gösterir. |
block-production | Bir slot aralığı için lider blok üretimini gösterir. |
block-time | Bir bloğun üretim zamanını tahmin eder. |
catchup | Bir validator'ın cluster'a yetişmesini bekler. |
close-vote-account | Bir vote hesabını kapatır ve kalan fonları çeker. |
cluster-date | Genesis zamanından ve ağ zamanından cluster tarihini tahmin eder. |
cluster-version | Cluster giriş noktasının yazılım sürümünü gösterir. |
completion | Kabuk tamamlama betiği oluşturur. |
config | CLI varsayılanlarını alır veya ayarlar. |
confirm | Bir işlem imzasının onay durumunu denetler. |
create-address-with-seed | Bir taban adres, seed ve program kimliğinden sistem adresi türetir. |
create-nonce-account | Kalıcı bir nonce hesabı oluşturur ve başlatır. |
create-stake-account | Bir stake hesabı oluşturur. |
create-stake-account-checked | Çekme yetkilisini imzalayıcı olarak doğrularken bir stake hesabı oluşturur. |
create-vote-account | Bir validator vote hesabı oluşturur. |
deactivate-stake | Delege edilmiş stake'in devre dışı bırakılmasını başlatır. |
decode-transaction | Serileştirilmiş bir işlemin kodunu çözer. |
delegate-stake | Bir stake hesabını bir vote hesabına delege eder. |
epoch | Geçerli epoch numarasını gösterir. |
epoch-info | Epoch, slot, blok yüksekliği ve işlem sayısı bilgilerini gösterir. |
feature | Çalışma zamanı özellik hesaplarını inceler ve yönetir. |
find-program-derived-address | Türü belirtilmiş seed'lerden bir PDA ve kanonik bump türetir. |
first-available-block | RPC düğümünün sakladığı ilk eksiksiz bloğu gösterir. |
genesis-hash | Cluster genesis hash'ini gösterir. |
gossip | Gossip üzerinden görünen düğümleri listeler. |
help | Kök veya komut yardımını yazdırır. |
inflation | Enflasyon yöneticisi, oranı veya ödül bilgilerini gösterir. |
largest-accounts | Cluster'ın en büyük hesaplarını listeler. |
leader-schedule | Lider çizelgesini görüntüler. |
live-slots | Geçerli slot ilerleyişini akış olarak sunar. |
logs | İşlem günlüklerini, isteğe bağlı olarak adrese göre filtreleyerek akış olarak sunar. |
merge-stake | Uyumlu stake hesaplarını birleştirir. |
new-nonce | Kalıcı bir nonce'u ilerletir. |
nonce | Kalıcı bir nonce değerini yazdırır. |
nonce-account | Kalıcı nonce hesabının tam durumunu gösterir. |
program | Programları ve buffer'ları dağıtır, yükseltir, inceler, döküm alır, yetkilisini ayarlar veya kapatır. |
recent-prioritization-fees | Yazılabilir hesaplar için son önceliklendirme ücretlerini gösterir. |
rent | Bir hesap veri boyutu için kira muafiyeti asgari tutarını hesaplar. |
resolve-signer | Ledger URL'si gibi genel bir imzalayıcı referansını belirli yoluna çözümler. |
sign-offchain-message | UTF-8 biçimli zincir dışı bir mesajı imzalar. |
slot | Geçerli slot'u gösterir. |
split-stake | Bir stake hesabındaki lamport'ları başka bir hesaba böler. |
stake-account | Bir stake hesabının yetkililerini, bakiyesini ve delegasyon durumunu gösterir. |
stake-authorize | Bir stake veya çekme yetkilisini değiştirir. |
stake-authorize-checked | Yeni yetkiliyi imzalayıcı olarak doğrularken bir stake yetkilisini değiştirir. |
stake-history | Cluster stake etkinleştirme ve devre dışı bırakma geçmişini gösterir. |
stake-minimum-delegation | Cluster'ın asgari stake delegasyonunu gösterir. |
stake-set-lockup | Bir stake hesabı için lockup (kilitleme) ayarlar. |
stake-set-lockup-checked | Yeni custodian'ı imzalayıcı olarak doğrularken lockup ayarlar. |
stakes | Stake hesaplarını, isteğe bağlı olarak validator veya yetkiliye göre filtreleyerek listeler. |
supply | Dolaşımdaki, dolaşımda olmayan ve toplam SOL arzını gösterir. |
transaction-count | Cluster işlem sayısını gösterir. |
transaction-history | Bir adresi içeren işlemleri en yeniden en eskiye doğru listeler. |
transfer | Sistem hesapları arasında SOL aktarır. |
upgrade-nonce-account | Eski bir nonce hesabını idempotent biçimde yükseltir. |
validator-info | Validator bilgilerini yayımlar veya okur. |
validators | Validator stake, komisyon, atlama oranı ve sürüm özetini gösterir. |
verify-offchain-signature | İmzalanmış zincir dışı bir mesajı doğrular. |
vote-account | Bir vote hesabının yetkililerini, komisyonunu, kredilerini ve oylarını gösterir. |
vote-authorize-voter | Bir vote hesabının oy verme yetkilisini değiştirir. |
vote-authorize-voter-checked | Yeni yetkiliyi imzalayıcı olarak doğrularken oy verme yetkilisini değiştirir. |
vote-authorize-withdrawer | Bir vote hesabının çekme yetkilisini değiştirir. |
vote-authorize-withdrawer-checked | Yeni yetkiliyi imzalayıcı olarak doğrularken çekme yetkilisini değiştirir. |
vote-update-commission | Bir vote hesabının komisyonunu değiştirir. |
vote-update-validator | Bir vote hesabına atanan validator kimliğini değiştirir. |
withdraw-from-nonce-account | Kalıcı bir nonce hesabından SOL'un bir kısmını veya tamamını çeker. |
withdraw-from-vote-account | Bir vote hesabından lamport çeker. |
withdraw-stake | Bir stake hesabından etkin olmayan SOL'u çeker. |
Betik çıktısı
İnsan tarafından okunabilir çıktıyı ayrıştırmak yerine, desteklenen yerlerde
--output json veya --output json-compact kullanın:
solana epoch-info --output jsonsolana account <ACCOUNT_ADDRESS> --output json-compactsolana validators --output json > validators.json
Her komut yapılandırılmış çıktıyı desteklemez. Otomasyonda buna güvenmeden önce komutun yardım çıktısını kontrol edin ve sıfırdan farklı çıkış durumunu başarısızlık olarak değerlendirin.
Is this page helpful?