Mój kod wymaga zainstalowania UFW (Uncomplicated firewall). Program będzie działał tylko w systemie operacyjnym Linux. Jak mam się zabrać, aby Python zwrócił wartość, jeśli znajdzie zainstalowany UFW?

Edycja: Zamiast przechwytywać dane wyjściowe, chcę sprawdzić, czy folder (w domyślnej ścieżce instalacji) istnieje.

-1
Clemens Dotson 16 grudzień 2019, 21:17
2
Jak sprawdziłbyś, czy UFW jest zainstalowany z wiersza poleceń? Czy możesz zorganizować uruchamianie tych samych poleceń za pomocą Pythona?
 – 
larsks
16 grudzień 2019, 21:21
1
Czy to odpowiada na twoje pytanie? równoważna funkcja „które” w Pythonie
 – 
manveti
16 grudzień 2019, 21:25
Zdaję sobie sprawę, że mogę po prostu uruchomić polecenie i przechwycić dane wyjściowe, ale chcę sprawdzić, czy folder (w domyślnej ścieżce instalacji) istnieje, czy nie.
 – 
Clemens Dotson
16 grudzień 2019, 21:58

1 odpowiedź

Należy pamiętać, że to tylko zmodyfikowana kopia linków

  1. Jak sprawdzić, czy katalog istnieje w Pythonie
  2. Sprawdź, czy istnieje program ze skryptu w języku Python

Mam nadzieję że to pomoże

import subprocess
rc = subprocess.call(['which', 'ufw'])
if rc == 0:
    print('ufw installed!')
else:
    print('ufw missing in path!')

# To check whether path exists

if os.path.exists("/usr/sbin/ufw") :
  print("path exists")
else:
  print("path doesn't exist") 

0
Akhil Suresh 16 grudzień 2019, 22:26