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
👨🏫👩🏫 • Sobir Alishayevning doktorlik (PhD) dissertatsiyasi himoyasi bo‘lib o‘tadi
💻Batafsil va ZOOMga havola...
👨🏫👩🏫 • Состоится защита докторской диссертации (PhD) Собира Алишаева
💻Подробнее и ссылка на ZOOM...
👨🏫👩🏫 • Defense of the doctoral dissertation (PhD) of Sobir Alishaev will take place
💻More & ZOOM-link...
⚫️🔴🔵🟣⚪️@tsulofficial#phd#himoya#защита#defense
👨🏫👩🏫 • Muzaffar Nodirovning doktorlik (PhD) dissertatsiyasi himoyasi bo‘lib o‘tadi
💻Batafsil va ZOOMga havola...
👨🏫👩🏫 • Состоится защита докторской диссертации (PhD) Музаффара Нодирова
💻Подробнее и ссылка на ZOOM...
👨🏫👩🏫 • The defense of the doctoral dissertation (PhD) of Muzaffar Nodirov will take place
💻More & ZOOM-link...
👍❤️📩@tsulofficial#phd#himoya#защита#defense
👨🏫👩🏫 • Ulzana Raximovaning doktorlik (PhD) dissertatsiyasi himoyasi bo‘lib o‘tadi
💻Batafsil va ZOOMga havola...
👨🏫👩🏫 • Состоится защита докторской диссертaции (PhD) Рахимовой Ульзаны Хамидуллаевны
💻Подробнее и ссылка на ZOOM...
👨🏫👩🏫 • The defense of the doctoral dissertation (PhD) of Ulzana Rakhimova will take place
💻More & ZOOM-link...
👍❤️📩@tsulofficial#phd#himoya#защита#defense
👨🏫👩🏫 • Sarbon Uralovning doktorlik (PhD) dissertatsiyasi himoyasi bo‘lib o‘tadi
💻Batafsil va ZOOMga havola...
👨🏫👩🏫 • Состоится защита диссертации (PhD) Сарбона Уралова
💻Подробнее и ссылка на ZOOM...
👨🏫👩🏫 • The defense of the doctoral dissertation (PhD) of Sarbon Uralov will take place
💻More & ZOOM-link...
👍❤️📩@tsulofficial#phd#himoya#защита#defense
👨⚖️👩⚖️ • Dildora Kamalovaning doktorlik (DSc) dissertatsiyasi himoyasi bo‘lib o‘tadi
💻Batafsil va ZOOMga havola...
👨⚖️👩⚖️ • Состоится защита докторской диссертации (DSc) Дилдоры Камаловой
💻Подробнее и ссылка на ZOOM...
⚫️🔴🔵🟣⚪️@tsulofficial#DSc#himoya#защита#defense
ЭКО кондиционер для белья Mayeri All care - это европейский продукт, созданный по новейшим технологиям!
Бережно ухаживающий за всеми типами тканей: cмягчает ткани, снимает статическое электричество.
Без красителей, ароматизаторов, фосфатов. Экологически безопасный продукт для Вас, Вашей семьи и нашей планеты.
#ополаскиватель#mayeri#здоровье#польза#забота#для#белья
Цена: 42 000 сум
Арт: F351
———————————-
ECO mato yumshatuvchi Mayeri All Сare geli - bu eng yangi texnologiyalar yordamida yaratilgan Yevropa mahsulotidir!
Barcha turdagi matolarga ehtiyotkorlik bilan g'amxo'rlik qilish: matolarni yumshatadi, statik elektrni olib tashlaydi.
Bo'yoqlar, xushbo'y moddalar, fosfatlarsiz. Siz, oilangiz va sayyoramiz uchun ekologik toza mahsulot.
#chayuvchi#mayeri#sogliq#foyda#himoya#kiyim#uchun
Narx: 42 000 so'm
Art: F351