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
Giuseppe #Conte afferma: "Il Movimento cinque stelle deve avere una forte identità. Non abbiamo nulla a che fare con la destra, ma preferisco non dire di sinistra". Osserva che il M5s "non può essere più il movimento iniziale di protesta" e che la sua collocazione deriva da istanze sociali, ecologiche e ambientali; aggiunge: "non di sinistra perché la storia della sinistra è quella del Pd e del Partito comunista"
@UltimoraPolitics24
Giuseppe #Conte afferma: "Bisogna andare a Kiev ogni mese per dimostrare qualcosa? Io non sono andato neppure a Gaza". Aggiunge: "Perché non andate a Gaza, in Cisgiordania? Applicare un doppio standard non è da M5s"
@UltimoraPolitics24
Board of Peace, Giuseppe #Conte: "Assolutamente non è dignitoso che l'Italia partecipi a una gestione, a uno strumento che non è certo di pacificazione di quella terra. È uno strumento che in questo momento, con le personalità che sono state inserite, con i criteri con cui viene gestito, che appare una sorta di comitato di affari che prelude a una speculazione immobiliare a danno dei palestinesi, non a loro favore" (Ansa)
@UltimoraPolitics24
Giuseppe #Conte: "Le immagini che arrivano da Torino sono inqualificabili. Il Movimento 5 Stelle condanna con la massima fermezza le violenze e le aggressioni perpetrate ai danni delle Forze dell'ordine e della troupe Rai. Atti che nulla hanno a che vedere con il dissenso democratico e che vanno respinti senza nessuna ambiguità. Agli agenti feriti e a tutti i professionisti coinvolti va la nostra piena solidarietà."
@UltimoraPolitics24
Referendum giustizia, Giuseppe #Conte: "Io rappresento una forza politica che fin dall'inizio si è battuta contro un disegno di legge pericoloso. L'abbiamo fatto convintamente perché riteniamo che si inquadri in un processo più ampio e che ha un obiettivo preciso di una politica di destra e cioè restituire il primato alla politica, scardinare il nostro sistema costituzionale e il principio dell'equilibrio dei poteri in base al quale la politica sia contrastata giustamente da un sistema di pesi e contrappesi. Ma se hai l'investitura popolare non puoi fare quello che ti aggrada ma devi rispettare i principi dello stato di diritto" (ANSA)
@UltimoraPolitics24
Giuseppe #Conte ad Atreju: "Noi siamo disponibili a dialogare con Il Pd e con le altre forze progressiste.
Se verrà fuori un'alleanza dipenderà solo dai programmi, se ci verranno scritte le nostre battaglie di sempre, dall'etica pubblica alla legalità, alla giustizia ambientale e sociale. Prima il programma, il candidato verrà dopo" e poi "Noi non siamo alleati con nessuno" (ANSA)
@UltimoraPolitics24
❗️Giuseppe #Conte: "Giorgia Meloni ha mentito in parlamento sul MES. Ho chiesto al presidente Fontana la convocazione del Giurì d'onore"
@UltimoraPolitics
❗️ Suppletive Monza, Giuseppe #Conte: "Il candidato del M5S sarà Marco Cappato. Abbiamo scelto di unire il più possibile le forze alternative a questa destra."
@UltimoraPolitics
Giuseppe #Conte: "Il governo è allo sbando. Sul decreto Lavoro, in realtà decreto Precariato, il governo non ha nemmeno la maggioranza in commissione Bilancio al Senato sui suoi stessi emendamenti."
@UltimoraPolitics
Giuseppe #Conte: "La patriota Meloni paga a Salvini la tassa per tenerlo in maggioranza, svende l'unità d'Italia per qualche punto percentuale in più alle regionali. Dobbiamo contrastare questo progetto di autonomia soprattutto sulla scuola e sulla sanità"
@UltimoraPolitics
Ucraina, Giuseppe #Conte: "Assistiamo a un sempre maggiore coinvolgimento, anche dell'alleanza Nato, in questo conflitto, mentre scompaiono all'orizzonte i negoziati di pace" @UltimoraPolitics
Ucraina, Giuseppe #Conte: "Assistiamo a un sempre maggiore coinvolgimento, anche dell'alleanza Nato, in questo conflitto, mentre scompaiono all'orizzonte i negoziati di pace"
@UltimoraPolitics