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
Fall in love with Peach & Goma, the cutest cat couple key chains! Perfect gift for your significant other 💕 Treat your love to a touch of playful fun. Get yours now!
🛒 : www.peachandgoma.com
🍑#merch@PeachLovesGoma🍑
Mitao Cat series3
Unleash the cuteness with the Mitao Cat Love Series 3 Blind Random Box Toys! Get your lucky cat guess bag mystery today and add some fun to your collection 🐾
Раскройте привлекательность с игрушками Mitao Cat Love Series 3 Blind Random Box Toys! Получите свою счастливую сумку для угадывания кошки сегодня и добавьте немного веселья в свою коллекцию 🐾
📦#Merch🧸@PeachLovesGoma🧸
Peach and Goma Plushies
Adorable alert! Gift your loved ones a cute surprise with Mitao Cat couple plush dolls. Soft, cuddly & perfect for snuggles!
🐾❤️
Очаровательное оповещение! Подарите своим близким милый сюрприз с парой плюшевых кукол Mitao Cat. Мягкие, приятные и идеально подходят для обнимашек!
📦#Merch🧸@PeachLovesGoma🧸
『УВЕДОМЛЕНИЕ. НОВЫЙ МЕРЧ』
Представляем вашему вниманию новую линейку мерча от MANCOOL🤓
🤓 даты онлайн продаж: 14 февраля - 20 марта, файлы в комментариях 🤩
#merch
『УВЕДОМЛЕНИЕ. НОВЫЙ МЕРЧ』
栗汀 выпускают еще одну линейку мерча по новелле "Глобальный экзамен"🤝
☺️ продажи начнутся 18 февраля, файлик с мерчем можно найти в комментариях
#merch
『УВЕДОМЛЕНИЕ. НОВЫЙ МЕРЧ』
MANCOOL показали анонс второй части товаров из новой линейки мерча 🫣
Внезапно Наблюдатель А повернулся в его сторону, приподнял голову и уставился прямо ему в глаза.
- Мы встречались? - сам не зная почему, спросил Цинь Цзю.
Наблюдатель А молчал.
Странно, но несмотря на показное спокойствие, всего на секунду Цинь Цзю увидел грусть в глазах А.
- Нет, - спустя пару мгновений ответил А и отвернулся.
Глава 146. Воссоединение
В переводе ulik3221
#merch
『УВЕДОМЛЕНИЕ. НОВЫЙ МЕРЧ』
Все позиции нового мерча от MANCOOL нам еще не показали, но, вероятно, на будущие шикиши и полароиды полюбоваться разрешили ❄️
😱 Что думаете?
#merch
『УВЕДОМЛЕНИЕ. НОВЫЙ МЕРЧ』
Новый развод на деньги от 栗汀 по новелле "Глобальный экзамен"🤝
☺️ файлик с мерчем лежит в комментариях, а продажи стартуют уже 1 января
пспс, там лежат те самые плюши на резиночке и ахрененная шикиши с новой обложкой 😏
#merch