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
#yakdilmintaqa
Озорбайжон ҳонандаларидан Талиб Тале ва Зайнабдан "Турон эллари" таронаси.
Туркий халқлар бирлиги, Турон маданияти ва миллий ғурур ҳақидаги ушбу таронани эшитинг ва тафаккур қилинг!
Унутмайлик, бир бўлсак Марказий Осиёмиз, бирлашсак Туркистон!
Агар туркий давлатлар бирлашса дунё дунёнинг маркази биз бўламиз!
@Tafakkur3
Prezidentimiz Birlashgan Millatlar Tashkiloti Bosh Assambleyasining 80-sessiyasida soʻzlagan nutqida bundan sakkiz yil oldin berilgan va’da va uning qay darajada bajarilgani haqida ham gapirib oʻtdi.
#yakdilmintaqa
#yakdilmintaqa
Markaziy Osiyoni nafaqat umumiy g‘oya, balki uzoq yillik tarixiy tajriba ham birlashtiradi. Qisqa qilib aytganda, bu hududni bog‘lab turgan “aloqa” - tarixiy xotira va til va tafakkur yaqinligi!
Bizni ijtimoiy tarmoqlarda kuzating!
| Telegram | Facebook | Youtube|Instagram|
#yakdilmintaqa
✅ O‘zbekiston Respublikasi Prezidenti Shavkat Mirziyoyev Ozarbayjon Respublikasi Prezidenti Ilhom Aliyevning taklifiga binoan 6-7 oktyabr kunlari amaliy tashrif bilan ushbu mamlakatda bo‘ladi.
Bizni ijtimoiy tarmoqlarda kuzating!
| Telegram | Facebook | Youtube|Instagram|
Prezidentimiz Birlashgan Millatlar Tashkiloti Bosh Assambleyasining 80-sessiyasida soʻzlagan nutqida bundan sakkiz yil oldin berilgan va’da va uning qay darajada bajarilgani haqida ham gapirib oʻtdi.
#yakdilmintaqa