TGViewer
Из Solidity в AI и дальше Из Solidity в AI и дальше @solidityset · 2.49K subscribers
Post #907 868
Foundry с 0: Cast команды. Часть 2

Сейчас существует достаточно большое количество Cast команд для самых разных задач: от простых запросов о получении баланса токена до работы с calldata и шифрованием.

Думаю, для начала пройдемся по тем, что чаще всего используют в своей работе, а оставшиеся будем изучать уже по мере необходимости.

Итак, мы можем открыть терминал и ввести команду:

cast help 

она покажет нам все доступные cast команды.

Тут стоит сделать отступление и уточнить, что для выполнения некоторых команд, нам потребуется специальная RPC ссылка для доступа к блокчейн сетям. Получить такую бесплатно можно на таких популярных проектах как Alchemy или Infura.

По сути, процесс получения ссылок у них похож: регистрируетесь на портале, ищите кнопку Get API key или похожую со словом API, и потом генерируется ваша индивидуальная ссылка для rpc запросов. Выглядит она примерно так:

https://mainnet.infura.io/v3/apiKey

apiKey - ваш уникальный api ключ, показывать который нежелательно никому.

Там же можно получить ссылку на различные сети: Ethereum, Optimism, Arbitrum и т.д.

Именно эту ссылку и нужно будет добавлять в конце наших cast команд.

Если вы работаете в редакторе кода, а не в обычном терминале, то есть возможность создать .env файл и поместить туда ссылки, создав для них специальные переменные среды, и уже их использовать в cast командах.

Для небольшой тренировки, попробуем сегодня выполнить несколько команд для получения информации о сети.


Chain команды

Итак, нам доступны три команды:

cast chain-id
cast chain
cast client

Первая выдаст нам номер блокчейна (например, для Эфириума - это 1, для Оптимизма - 10), вторая - название сети, третья - клиента, через который отправляются запросы (например, для Infura - клиент GETH).

Для того чтобы выполнить команду в консоли потребуется прописать:

cast chain-id --rpc-url link

где вместо link - указать вашу ссылку rpc, которую мы получали выше.

Также, думаю, сегодня можно рассмотреть и команды для блоков.


Block команды

Всего на данный момент их шесть:
https://book.getfoundry.sh/reference/cast/block-commands

1. cast find-block
2. cast gas-price
3. cast block-number
4. cast basefee
5. cast block
6. cast age


Первая ищет блок, который был ближе всего к нужной дате, например

cast find-block 1609459200

покажет блок, который был ближе всего к Новому Году 2021.

Обратите внимание, что время указывается в формате unix (количество секунд прошедшее с момента 1 января 1970 года).

Вторая команда показывает текущую стоимость газа в нужной сети, например:

cast gas-price --rpc-url link

Третья - последний на данный момент блок:

cast block-number --rpc-url link

Четвертая - basefee блока (кто не знает, что это, то почитайте про Лондонское обновление):

cast base-fee blockNum --rpc-url link

blockNum - это номер блока, basefee которого нам нужно получить. Вместо числа - 1, 443, 2343242 - можно указать одно из теговых значений: earliest, finalized, safe, latest или pending. По умолчанию идет latest.

Пятая - получение информации о блоке, например:

cast block finalized --rpc-url link

Тут также можно указывать номер блока числом или одним из тегов:
earliest, finalized, safe, latest или pending.

При этом можно получить не всю информацию о блоке, а только необходимое поле. Попробуйте выполнить предыдущую команду, чтобы понять, о чем я говорю.

Получить информацию о конкретном поле можно с помощью модификации команды, а именно добавления --field опции:

cast block latest -f hash --rpc-url link  

Ну, и шестая команда служит для получения timestamp блока:

cast age blockNum --rpc-url link

где blockNum это номер блока или его теговое значение.

Дальше мы продолжим говорить о командах cast и разберем другие примеры.


Задание

1. Зарегистрироваться на Alchemy или Infura;
2. Получить rpc ссылку;
3. Попробовать несколько команд из поста;
4. Настроить .env файл для rpc ссылок;

#foundry #cast #block #chain #lesson2
  • 👍 5
  • 🔥 5
More from @solidityset
  1. Sep 22, 2026Какой язык программирования учить сейчас? На днях в Твиттере увидел небольшой пост о разви…
  2. Sep 18, 2026Интересная модель Jev Буквально пару дней назад в Твиттере многие начали обсуждение новой…
  3. Sep 14, 2026Графы повсюду Если вы также следите за новостями в мире ИИ, то наверняка уже все чаще встр…
  4. Sep 10, 2026GTA6, Cyberleek, блокчейн и безопасность Увидел несколько постов (тут и тут) про Cyberleek…
  5. Sep 9, 2026Работа с чистой энергией Дисклеймер Сегодня ава и название канала, наконец, поменялись. Я…
  6. Sep 9, 2026Channel name was changed to «Из Solidity в AI и дальше»
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →