Moduł Python OS

Moduł Python OS

Wstęp

Python to potężny język skryptowy. Dlaczego więc nie użyć go do skryptu Linux? OS Moduł to odpowiedź Pythona na obsługę wielu operacji plików Linux.

OS Moduł pozwala Pythonowi wykonywać wiele operacji plików i folderów, które zwykle wykonujesz w wierszu poleceń Linux. Umożliwia to zamianę Bash na Pythona, co sprawia, że ​​jest znacznie czystsze i bardziej przyjazne wrażenia z pisania.

Ładowanie systemu operacyjnego

OS Moduł to moduł Python jak każdy inny. W dowolnym skrypcie, w którym chcesz go użyć, możesz użyć instrukcji importu, aby go wciągnąć.

Import OS

getCwd ()

getCwd () Metoda zwraca bieżący katalog roboczy w postaci ciągu. Nie musisz niczego przekazać. To z grubsza odpowiednik PWD.

Drukuj (OS.getCwd ())

chdir ()

chdir () jest odpowiednikiem Pythona płyta CD. Wywołaj metodę i przekazaj jej katalog, na który chcesz zmienić jako ciąg.

OS.chdir ('/home/user/dokumenty')

Wspiera również przy użyciu względnych ścieżek tak jak płyta CD.

OS.chdir („… /pobieranie”)


Listdir ()

Za pomocą Listdir () jest bardzo podobny do biegania LS w Bash. Istnieje jednak jedna duża różnica, wartość zwracana.

Zamiast drukować zawartość katalogu, otrzymujesz je z powrotem jako lista.

pobierz_list = OS.Listdir („pobieranie”) print (pobierz_list) 

Ponownie możesz określić katalog lub wymienić zawartość bieżącego katalogu.

mkdir () i moedirs ()

Te dwa są dokładnie tym, czego można się spodziewać. mkdir () Działa bardzo podobnie do polecenia Linux, które znasz. W tym przypadku może wymagać drugiego parametru, aby określić uprawnienia.

OS.mkdir („testDir”, 755)

Makedirs () Metoda działa w ten sam sposób, ale może tworzyć katalogi rekurencyjne w sobie, eliminując potrzebę uruchomienia mkdir () wiele razy.

OS.Makedirs („TestDir2/Something/Somethingelse”, 755)

Jeszcze raz możesz określić uprawnienia, jeśli chcesz.

chmod ()

To po raz kolejny prosty odpowiednik jego tradycyjnego odpowiednika. chmod () bo Python bierze dwa argumenty. Pierwszy to katalog do zmiany, a drugi to uprawnienia do zmiany.

OS.chmod („test”, 774)

Chown ()

Możesz także zmienić własność z Pythonem. Chown () to sposób, w jaki to robisz. Metoda jest bardzo podobna do polecenia Linux, ale wymaga identyfikatorów użytkownika i grupy do pracy.

OS.Chown („test”, 1000, 1000)

To polecenie zmieni własność katalogu „test” na użytkownika z identyfikatorem 1000 i grupy z identyfikatorem 1000.



usuń () i resusedirs ()

usunąć() Usuwa pojedynczy plik, który został przekazany. Możesz również przekazać całą ścieżkę do pliku.

OS.Usuń ('/home/użytkownik/pobieranie/somefile')

Aby usunąć katalogi, użyj resusedirs () metoda. Usunie określony katalog i całą jego zawartość.

OS.usuwane („test_dir”)

system()

Tak więc ostatnia metoda tutaj jest najpotężniejsza i najbardziej niebezpieczna. system() Metoda to oszustwo. Pozwala uruchomić dowolne polecenie systemu Linux, które do niego przekazujesz.

Jest tu kilka obaw. Po pierwsze, aby uruchomić metodę, Python otwiera własną konsolę. Za pomocą system() Zbyt wiele jest nieefektywne i może hogować zasoby. Co ważniejsze, system() może uruchomić wszystko. Oznacza to, że może wyrządzić poważne szkody. Jeśli zamierzasz użyć system() Używaj go oszczędnie i w kontrolowanych okolicznościach.

Spróbuj uruchomić polecenie system().

Drukuj (OS.System (LS -LAH))

Możesz także uzyskać z nim rodzaj kreatywności, a nawet poleceń razem, tak jak w normalnym terminalu.

Drukuj (OS.System (PS Aux | Grep Firefox))

Jeśli masz działanie Firefoxa, polecenie znajdzie proces i wydrukuje na nim informacje.

Zamykanie myśli

Zrobiłeś pierwszy krok w kierunku scenariusza systemu Linux z Pythonem. Jest więcej narzędzi, które oferuje Python, a rzeczy stają się bardzo skomplikowane w tej przestrzeni. Popularne narzędzia do automatyzacji, takie jak Ansible i Salt, są wytwarzane z Python, więc tak naprawdę nie ma ograniczeń co do tego, co może zrobić.

Ćwiczenia

  1. Wydrukuj swój obecny katalog za pomocą Pythona.
  2. Zmień w inny katalog i wydrukuj ten.
  3. Utwórz pętlę, która iteruje zawartość katalogu i drukuje każdą z nich indywidualnie.
  4. Utwórz nowy katalog z katalogiem, a kolejny krok w dół.
  5. Zmień uprawnienia nowego katalogu, aby właściciel mógł czytać zapis i wykonywać, a wszyscy inni mogą tylko czytać i wykonywać.
  6. Usuń dwie podkazowe.
  7. Użyj Pythona, aby utworzyć plik tekstowy, który zawiera listę wszystkich procesów, które obecnie uruchamia Twój użytkownik.

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Jak tworzyć pliki swapowe w Ubuntu i Mint
  • Folder zip w Linux
  • Mastering Bash Script Loops
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 22.04 JAMMY Jellyfish…
  • Zagnieżdżone pętle w skryptach Bash
  • Pobierz Linux
  • Rzeczy do zainstalowania na Ubuntu 22.04