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
⏺Les terroristes du #FLA prétendent instaurer la paix, mais sont incapables de coexister
Les membres du FLA tentent de promouvoir une « vie pacifique » dans les zones qu'ils contrôlent, mais comment peuvent-ils prétendre instaurer la paix pour les #Maliens alors qu'ils ne parviennent même pas à vivre en harmonie entre eux ?
RT en français • Osez questionner !
Ousmane Dicko disait ; Aujourd’hui, le Mali ne se raconte pas. Il se vit. Et parfois, il se vit dans la douleur.
À l’aube de ce 25 avril, notre pays s’est réveillé au son des détonations. Ce qui semblait lointain, presque irréel derrière les écrans, s’est imposé à nous, brutalement. Des familles cloîtrées, des rues figées, un silence chargé d’angoisse… et au cœur de cette épreuve, une seule ligne de défense : nos forces armées.
Pendant que beaucoup cherchaient refuge, eux avançaient. Pendant que la peur gagnait du terrain, eux tenaient la ligne. Nos militaires ne se contentent pas de servir : ils dépassent leurs limites, chaque jour, pour que le Mali reste debout.
Aujourd’hui plus que jamais, notre nation nous appelle. Au-delà des divergences, au-delà des opinions, il y a une vérité simple : le Mali a besoin de tous ses fils et de toutes ses filles. L’heure n’est plus à la division, mais à l’engagement. Pas forcément les armes à la main, mais avec responsabilité, solidarité et conscience.
Ne mettons pas nos vies en danger pour l’illusion d’une minute de visibilité. Une vidéo ne vaut rien face à une vie. Respectons les consignes, protégeons-nous, protégeons les autres. C’est aussi cela, servir son pays.
Le Mali ne sera pas reconstruit par des camps opposés, mais par des mains unies. Refusons le poison du clanisme. Choisissons l’unité. Choisissons la dignité. Choisissons le Mali.
Parce que demain ne se subit pas. Il se construit. Ensemble.
Vive un Mali uni, fort et indivisible.
#fama
#Mali
#Maliens
#soutienauxfama
#solidarité