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
🔥 Breaking News: We just burned over 1,000,000 $SING tokens!
This move reinforces our commitment to boosting $SING's valuealongside the groundbreaking innovations we're building for the SingSing community. 🚀
🔮 Here's a sneak peek: Revolutionary AI coming to SingSing will forever change the face of gaming. Stay tuned!
Check out burning details: https://bscscan.com/tx/0x46ec5084869ae42ca73c1769deaba4fa952c5f790338be54ad415102b3a05c51
#SingSingAI#TokenBurn#NextGenGaming#BlockchainInnovation
🤑Exciting News from Mappasaurus!
🤑
🔥 We are thrilled to announce a strategic partnership with #Bitgert, a leader in blockchain efficiency!
🦖#Mappasaurus is revolutionizing the mapping landscape with AI-driven and decentralized technology. Partnering with Bitgert enhances our mission to provide innovative, real-time mapping solutions with a focus on accessibility and privacy.
💸#Bitgert stands out with its low gas fee blockchain, perfectly aligning with our goals to enhance scalability and cost efficiency for our users.
💯#BlockchainInnovation#MappingRevolution#CryptoCommunity
Evolve Token Sale – Limited Time Offer!
The future of tokenized assets, private lending pools, and global trading is here! 🌍💰
🔥 Exclusive Offer: 100% Deposit Match for 48 Hours! 🔥
✅ Buy with BNB or SOL
✅ Instantly double your tokens!
✅ Secure your spot in the next wave of DeFi innovation!
⏳ Time is running out! Don’t miss this high-growth opportunity!
👉 Buy Now: buy.evolvetoken.io
#EvolveToken#CryptoSale#DeFiRevolution#BlockchainInnovation
🔒🌐 Commodity Proof of Reserves - Trusted, Public, and Secure Storage
We are thrilled to unveil Commodity Proof of Reserves, an innovative solution that ensures unwavering trust, transparency, and security in commodity storage.
Through our strategic partnership with a globally renowned mining company, in collaboration with SLEX, we guarantee a steady supply of liquidity and a secure trading environment. Our collaboration ets the highest standards of reliability and integrity.
Our mining operations cover multiple cities in the Democratic Republic of Congo (DRC): Lubumbashi, Kakanda, and Likasi. This extensive network taps into abundant resources, providing an impressive $3 billion USD supply 📝
We understand the critical importance of trustworthy storage and protection in today's dynamic market. Through advanced blockchain technology, we've created a system that ensures complete transparency and validation of reserves. This approach instills confidence in our valued clients and partners.
Commodity Proof of Reserves is a testament to our commitment to innovation, security, and reliability. With our trusted partner and vast resources, we aim to reshape commodity trading, setting new standards for excellence 📌
👉🏻 Join us Now and Stay Tuned For Updates and Developments: Slex.io
#CommodityProofOfReserves#TrustedStorage#SecureTrading#BlockchainInnovation
⚡️𝗣𝗮𝗿𝘁𝗻𝗲𝗿𝘀𝗵𝗶𝗽 𝗔𝗻𝗻𝗼𝘂𝗻𝗰𝗲𝗺𝗲𝗻𝘁 ⚡️
ᶜʳʸᵖᵗᵒ ¹⁰⁰ˣ ⱽ ᴹᵃʳˢᵒ ᵒⁿ ᴱᵀᴴ ⁽ ᴮᵃˢᵉ ⁾🔹
Marso Token: The Next BIG Thing in Crypto is Here! 🔥🔥🔥
🚀 The new BIG thing in the crypto market is here: Marso Token is launching, and it’s coming in HOT! Ready to soar, Marso Token is set to redefine possibilities in the crypto universe. 🫡🫡🫡 Join our journey, follow all our socials, stay tuned for the latest updates, and don’t miss your chance to invest early! ⭐️⭐️⭐️⭐️⭐️
🤑🤑🤑 Get in on the action now—exclusively on BitMart! Let’s make history together with Marso Token. 🥰🥰🥰
🤩🤩🤩🤩 Join the Marso community for exciting news, contests, and more. This is only the beginning, and you’re invited to be part of it. 🤟🤟🤟
✅Website: marso.tech
✅Telegram: https://t.me/MarsoUniverseCommunity
🚀X: https://x.com/marsouniverse?s=21
📱Instagram: https://www.instagram.com/marsouniverse?igsh=ZjR4cW5vZXVpdmMy&utm_source=qr
#MarsoToken#CryptoLaunch#BiggestCrypto#InvestNow#CryptoCommunity#Bitmart#MarsoUniverse#AltcoinSeason#CryptoFuture#BlockchainInnovation#EarlyInvestors#CryptoBuzz#NextBigCoin#FutureOfFinance#MarsoToTheMoon