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
Друзья, не забывайте про наш крутой бьюти-бар от NL International. Здесь мы заряжаемся красотой и пробуем вкуснейшие новинки от NL. А самые активные гости бара получат бесплатные welcome-наборы с вкусняшками для красоты и здоровья.
Итак, как получить подарок:
- идем в бьюти-бар NL
- делаем фото с продуктами или нашими красавицами Мисс Шерегеш
- выкладываем пост или сториз в свои соцсети, отмечаем аккаунт @nl_int и ставим #nl_грелкафест
- показываем фото с отметками бармену и получаем подарок!
Go зарядиться красотой и получить полезные подарки от NL International!
@nl_news
#грелкафест2024#nl
Друзья, не забывайте про наш крутой бьюти-бар от NL International. Здесь мы заряжаемся красотой и пробуем вкуснейшие новинки от NL. А самые активные гости бара получат бесплатные welcome-наборы с вкусняшками для красоты и здоровья.
Итак, как получить подарок:
- идем в бьюти-бар NL
- делаем фото с продуктами или нашими красавицами Мисс Шерегеш
- выкладываем пост или сториз в свои соцсети, отмечаем аккаунт @nl_int и ставим #nl_грелкафест
- показываем фото с отметками бармену и получаем подарок!
Go зарядиться красотой и получить полезные подарки от NL International!
@nl_news
#грелкафест2024#nl
Громкие фанфары, восхищенные взгляды, резкий рост ширины улыбок!
Встречайте участниц Мисс Шерегеш-2024!
Приветствуем и начинаем пристально, но очень тактично, следить за великолепной десяткой самых жизнерадостных высокогорных красавиц!
1. Березовская Христина
2. Зимина Алина
3. Кузьмина Жанна
4. Лобаненко Наталья
5. Логинова Анна
6. Малахова Яна
7. Новикова Ксения
8. Старченко Ульяна
9. Сулимова Анна
10. Харыбина Анна
Не пропусти самое красивое, что могло случится с нами в горах) Поддерживай со всей силы любимую участницу!
Чтобы увидеть финал самого красивого среди горнолыжных и самого горнолыжного среди красивых конкурсов, регистрируйся и становись участником Grelk’и на https://grelkafest.com
Быстрее всех узнавай новости фестиваля на наших страницах)
Телеграм https://t.me/GrelkaFest_News
ВКонтакте https://vk.com/grelkafest
И вступай в чат веселых райдеров https://t.me/+FjmJaUlJIpM4OThi
#грелкафест2024#миссшерегеш2024#nl
Мисс Шерегеш начнется уже вот-вот… Осталось только определить еще одну финалистку!
Начинаем онлайн-голосование, где вы, опытные ценители высокогорной красоты и обаяния, определите, кто из 10 претенденток пройдет в финал Мисс Шерегеш-2024 и станет десятой финалисткой.
Голосование продлится до 20:00
4 апреля 2024 года. Успевай!
А чтобы увидеть этот парад высокогорной красоты на яву, регистрируйся и становись участником Grelk’и на https://grelkafest.com!
Быстрее всех узнавай новости фестиваля на наших страницах)
Телеграм https://t.me/GrelkaFest_News
ВКонтакте https://vk.com/grelkafest
И вступай в чат веселых райдеров https://t.me/+FjmJaUlJIpM4OThi
#грелкафест2024#миссшерегеш2024#nl