Python + bash
Если вам часто требуется запускать shell команды из Python-кода, какой способ вы используете?
Самый низкоуровневый это функция os.system(), либо os.popen(). Рекомендованный способ это subprocess.call(). Но это всё еще достаточно неудобно.
Советую обратить своё внимание на очень крутую библиотеку sh.
Что она умеет?
🔸 удобный синтаксис вызова команд как функций
# os
import os
os.system("tar cvf demo.tar ~/")
# subprocess
import subprocess
subprocess.call(['tar', 'cvf', 'demo.tar', '~/'])
# sh
import sh
sh.tar('cvf', 'demo.tar', "~/")
🔸 простое создание функции-алиаса для длинной команды
fn = sh.lsof.bake('-i', '-P', '-n')
output = sh.grep(fn(), 'LISTEN')
в этом примере также задействован пайпинг
🔸 удобный вызов команд от sudo
with sh.contrib.sudo:
print(ls("/root"))
Такой запрос спросит пароль. Чтобы это работало нужно соответствующим способом настроить юзера.
А вот вариант с вводом пароля через код.
password = "secret"
sudo = sh.sudo.bake("-S", _in=password+"\n")
print(sudo.ls("/root"))
Это не все фишки. Больше интересных примеров смотрите в документации.
Специально для Windows💀 юзеров
#libs#linux
Big bullish moves in $HYPE spotted today! 🔥
1️⃣ Whale “0x137” spent $5.71M $USDC to buy 101,615 $HYPE at an avg. price of $56.2 after 3 months of dormancy.
2️⃣ Whale “mtaavebank.eth” bridged $14.6M $USDC into #HyperLiquid, opened a 5x long on 215,985 $HYPE (~$12.6M), and deposited $4.5M into #Vault.
Will whales maintain their optimism about $HYPE? Follow @spotonchain for more updates! 👀
https://x.com/spotonchain/status/1968620427426808110
🌎 The Svalbard Global Seed Vault, buried deep in a Norwegian mountain, stores over a million seed varieties as a backup for global agriculture—safeguarding food diversity for future generations. ✨
#biodiversity⚡#conservation⚡#vault
👉subscribe Interesting Planet
У #Gucci есть сервис, который называется #Vault.
Это отобранные креативным директором и сотрудниками отдела архива эксклюзивные винтажные находки, которые затем реставрируются командой Бренда и выставляются на продажу.
Ну это настоящая инвестиция в искусство, девочки и мальчики))
Из-за своей эксклюзивности, эти винтажные предметы являются единственными в своем роде, доступными только один раз и пронумерованными в соответствии с годом выпуска — деталь, которая еще больше подчеркивает их космически ограниченную доступность.
Помимо ежемесячных винтажных обновлений в Vault можно найти предметы из эксклюзивных капсул и специальных коллабораций.
#Moon Boots, которые я выставляла недавно, именно оттуда.
Каждый предмет доступен только один раз и после покупки не возвращается на сайт.
Оформить заказ/уточнить делали
🤝 Storm Trade x EVAA x Tonstakers: a Power Strategy for Liquidity Providers
How to put your $TON to work more effectively in DeFi?
Three top-tier TON protocols — #StormTrade, #EVAA, and #Tonstakers — have joined forces to introduce a layered liquidity strategy that helps you boost rewards across multiple platforms simultaneously.
The core idea: use the same asset across several protocols and earn rewards in each one:
🔵 EVAA
🔵 Storm Trade
🔵 Tonstakers
⚡️Aggressive Strategy:
1️⃣ Stake your $TON with @tonstakers_bot to receive $tsTON (~4% APR).
2️⃣ Supply $tsTON in EVAA — earn 2 XP for every $1 supplied.
3️⃣ Borrow $TON on EVAA — earn 5 XP for every $1 borrowed.
4️⃣ Trade the borrowed $TON on Storm Trade — earn ✖️ twice more RP per $1 in volume.
✅Moderate Strategy:
Prefer lower risk? Borrowed $TON from EVAA can be deposited into the Storm Trade TON Vault to earn up to 20% APR. You’ll still receive ✖️ RP rewards.
🗓️Campaign Dates: April 15–25, until 15:00 CET
🥇😇🐸 Rewards will be distributed after the campaign ends.
#Degen#DeFi#Stake#Vault#Supply