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
Уже слышен лёгкий топот копыт и мы готовы встречать Новый год, несущий утончённость и благородство Огненной Лошади.🌟
Встретьте его в безупречном и уверенном стиле, воплощённом в коллекции Balmain - сейчас на неё действуют скидки до –50%.🌟
Balmain
Ждём вас за главным образом года в бутике WISTERIA.🌟
📍г.Москва , Хамовники
Саввинская набережная 13
#WISTERIA#Balmain#премиумбренды
Говорят, что нельзя купить счастье. Но можно купить прекрасный подарок в Wisteria и упаковать его в идеальную бумагу.🌟🌟
И получить в итоге два в одном: сам подарок и невероятное удовольствие от его распаковки.🌟
#wisteria#детскийподарок#упаковкаподарков
Время подарков в Wisteria! 🌟
Наступает самое волшебное время года. Время, когда воздух пахнет хвоей и мандаринами, а в окнах зажигаются новогодние гирлянды. Время, когда хочется дарить тепло, уют и красоту.🌟
Пусть каждый подарок, который вы найдёте у нас, станет частичкой этой магии — тёплым намёком на заботу, стильным пожеланием радости, воплощением изысканного вкуса.🌟
Мы завернули в нашу фирменную упаковку сотни идей: от тех, что станут главным сюрпризом под ёлкой, до изящных знаков внимания для ваших детей.
Дарите не просто подарки.🌟
Дарите эмоции и вдохновение от Wisteria!🌟🌟
#Wisteria#WisteriaKids#WisteriaFashion#ПремиумБренды
В WISTERIA поступление новой коллекции Stone Island сезона AW25.
STONE ISLAND
В фокусе этого сезона:
🌟Чёткие, архитектурные силуэты
🌟Передовые технологии обработки материалов
🌟Сложная, приглушенная палитра
🌟Детали, в которых заключена философия бренда
Исследуйте коллекцию первыми.🌟
#StoneIsland#StoneIslandAW25#НоваяКоллекция#WISTERIA
Есть любовь, которая длится всю жизнь. Для Стеллы Маккартни это - любовь к лошадям.🌟
Она выросла в живописном графстве Кент, где её детство было окружено природой и животными.
Стелла не просто наблюдала за ними и каталась, но заботилась о них, формируя особую, доверительную связь. 🌟
Это воспитало в ней чувство ответственности, терпение и уважение ко всему живому.🌟
Любовь к лошадям стала основой её революционного подхода к моде.Именно поэтому бренд Stella McCartney никогда не использует кожу, мех или шерсть.
Лошади — это её музы, свободу, грацию и нежность которых она переносит в свои коллекции.🌟
В наступающем году образ лошади на принтах новой коллекции Stella McCartney весна-лето’26 звучит особенно символично.🌟
STELLA McCARTNEY
#WISTERIA#StellaMcCartney#премиумбренды#одеждадлядетей
Новогодние каникулы — время для зимних приключений!🌟
Пока дети отдыхают, катаются на санках, коньках и просто радуются снегу, важно, чтобы им было тепло, уютно и комфортно.🌟
Подарите детям свободу движения и яркие эмоции этой зимой, а мы позаботимся о том, чтобы их одежда была самой удобной, красивой и теплой.🌟
Ждем вас в Wisteria за идеальным зимним гардеробом для новых приключений!
#Wisteria#детскаяодежда#зимниеканикулы#детскаямода#зимняяодежда
Wisteria: Ваши особенные Клиентские Дни! 🌟
Дорогие друзья! Готовимся к праздникам с комфортом и выгодой.
С 11 по 17 декабря приглашаем вас на наши Клиентские Дни в бутике и онлайн.🌟
Вас ждет специальное предложение:
–20% на избранные коллекции любимых премиальных брендов.🌟
Во время клиентских дней скидка комбинируется с вашей картой привилегий Wisteria, создавая уникальную возможность для обновления гардероба.
В акции участвуют:
🌟 DOLCE&GABANNA
🌟 ANJA SCHWERBROCK
🌟 BALMAIN
🌟 BOSS
🌟 EMILIO PUCCI
🌟 EMPORIO ARMANI
🌟 HUGO
🌟 KENZO
🌟 PRETTY BALLERINAS
🌟 REGINA
🌟TARTINE ET CHOCOLATE
🌟 SNUG
Это идеальный момент, чтобы выбрать стильные вещи для новогодних праздников и зимнего сезона.🌟
Ждем вас:
🌟 11 – 17 декабря
🌟 Бутик: Хамовники, Саввинская набережная, 13
🌐 Онлайн: https://wisteriakids.ru/choice/klientskiedniminus20/?page=2
Совместите выгодный шопинг с волшебством! 11 декабря в бутике вас ждет наш Новогодний Огонёк с мастер-классами, фокусником и подарками для детей.
Приходите за стилем и праздничным настроением!🌟
#Wisteria#WisteriaKids#КлиентскиеДни#Скидка20#ПремиальнаяДетскаяОдежда#ДетскаяМода#Распродажа
Клиентские дни с волшебством: Новогодний огонёк в Wisteria!🌟
Это будет день, наполненный магией и радостью для всей семьи.🌟
Для наших маленьких гостей:
🌟творческие мастер-классы
🌟выступление настоящего фокусника-иллюзиониста
🌟вкусные праздничные угощения
🌟подарки и сюрпризы от эльфов Wisteria
Пока дети заняты творчеством и волшебством, вы сможете в расслабленной атмосфере выбрать идеальные наряды на праздники и не только:
🌟20% скидка на лучшие предложения сезона.
🌟персональный подбор образов от наших стилистов.
🌟эксклюзивные подарки за покупку
Ждем вас 11 декабря в бутике Wisteria:
c 14:00 до 20:00
Давайте создадим для детей самое яркое предновогоднее воспоминание вместе! 🌟
#Wisteria#WisteriaKids#НовогоднийОгонек#ПраздникДляДетей#ПремиальнаяДетскаяОдежда#МастерКлассДляДетей#СемейныйПраздник
Ферма учит простому: счастье — в контакте.
С природой, с животными, с близкими.🌟
В такие моменты понимаешь: детство создаётся из простых, но ярких впечатлений. 🌟
Из запаха яблок прямо с ветки, из смелости протянуть руку к козлёнку, из удивления от тёплого куриного яйца в ладошке.🌟
Не нужно ничего искусственного, когда есть настоящее.
В Wisteria мы верим, что правильная вещь — та, которую не замечаешь, которая позволяет быть собой: любопытным, веселым и отважным для новых приключений.🌟
WISTERIA KIDS
#wisteria#детскийбутик#гардеробдляприключений#фермасдетьми#естественныефото#семейныйдень#стильидети
Хотите естественных и радостных фото с ребёнком?🌟
Отправляйтесь на ферму!
Здесь не придётся уговаривать «посмотри в камеру» » или «ну,пожалуйста, улыбнись». 🌟
Тут все эмоции рождаются сами: восторг от кролика, удивление от размера коровы, игра в козу рогатую.🌟
Идеальный кадр рождается там, где ребёнку по-настоящему хорошо.
А мы в Wisteria поможем собрать гардероб для таких особенных дней — красивый, комфортный, созданный для настоящих эмоций.🌟
WISTERIA KIDS
#wisteria#детскийбутик#гардеробдляприключений#фермасдетьми#естественныефото#семейныйдень#стильидети