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
Романтики, сегодня мы разберем образ Верховного мага Кингу (Син). Таинственный, мрачный, управляет хаосом... Всё как мы любим 😼
Цветовую палитру образа Кингу составляет в основном черный, поэтому нам точно понадобится карандаш для глаз #eyeloveunicorns в оттенке 001 Black heart 🖤 Подчеркнем загадочность героя и избавимся от четких, графичных линий с помощью растушевочной кисти для теней #crystalcuties. Ну и как не выделить такие острые и высокие скулы? С этим точно справится контуринг в стике #easyskinny!
Дерзкие, эффектные аксессуары идеально дополнят образ! Например, серьги Lightning black #sugargem и ожерелье Black chain #sugargem⚡
А еще мы разбирали образы других персонажей истории Цветок из огня Тиамат: Никкаль, Су и Лихы🐾
#sodalovesgames
Романтики, вы здесь? Сегодня погружаемся в загадочный мир антиутопии…👽 С Лу, главной героиней и иконой киберпанка со всеми вытекающими: холодные оттенки, металлические мотивы и ничего лишнего!
Самые яркие элементы этого образа — жидкие тени #eyeloveyou в оттенке 003 Albus и жидкий хайлайтер #showyourself North wind, а также насыщенные, но приглушенные цвета палетки Some things never change. Для основы рекомендуем сочетание контурирующей пудры #easyskinny с кремовым консилером #byeundereye🌌
#sodalovesgames
Романтики, сегодня разбираем образ Мии, как вы и просили 👀
У героини очень дерзкий образ, можно даже сказать, она женщина-вамп 🤭
Весь образ строится на сильных контрастах, поэтому для макияжа глаз мы возьмем палетку с насыщенными темными оттенками Into the unknown #showyourself❤️🔥 С ней можно сделать классический черно-дымчатый смоки, или поэкспериментировать и попробовать бордовые оттенки!
Естественные тени на лице подчеркнем контурингом в стике #easyskinny, чтобы структура лица выглядела более выраженной ⚡️
В качестве интересного акцента мы бы добавили полумесяц 🌙 с помощью маркера для глаз в форме луны #makeitpop — всё-таки она рожденная луной 🌚
Для губ идеально подойдет жидкая матовая помада #matteaboutyou в оттенке 006 Fall in love — темно-красная, насыщенная, вайб вампир 💋
Хорошим завершением образа будет лак для ногтей #glossyglow. Здесь выбор за вами: красный оттенок № 005 Arson или черный № 006 More 💅
Чьи образы Клуба Романтики нам разобрать следующими? 🐾
#sodalovesgames