Programmering

9 nyttige tips Arbeide med operativsystem ved bruk av Python

9 nyttige tips Arbeide med operativsystem ved bruk av Python

Det er flere situasjoner når vi vil jobbe med operativsystemet ved hjelp av Python. Det kan være lurt å se brukeropplysningene eller ønsker å gjøre noen oppgaver med filene og katalogene. Hvis du er systemadministrator, vil du finne det nyttig å jobbe med operativsystem, da man enkelt kan automatisere noen gjentatte oppgaver i operativsystemet ved hjelp av Python.

Selv om de samme oppgavene kan utføres ved hjelp av grunnleggende skallskripting, har den begrensede muligheter og vil ikke gi deg så mye kraft som i Python. I tillegg kan det samme python-skriptet brukes hvor som helst og også integrere kodene i andre python-prosjekter. Det er et stort antall moduler å jobbe med operativsystemet i Python. Noen av modulene som er inkludert i Pythons standardbibliotek og fungerer godt med operativsystemer er os / sti, pwd, glob, shutil, og underprosess.

Før du begynner med denne veiledningen, må du ha Python installert. Hvis du ikke allerede har den installert, kan du se vår trinnvise guide for å installere Python på Linux.

Henter OS-informasjon ved hjelp av Python

Noen ganger vil du kanskje hente nødvendig informasjon om operativsystemet som brukernavn, bruker-ID eller bare navnet på operativsystemet. Dessuten kan det hende at programmet må vite hvilket operativsystem som kjører, slik at det kan finjustere oppgavene for forskjellige operativsystemer.

1. Få informasjon om operativsystemet

Vi kan få operativsystemdetaljer som plattform, navn på Linux-distribusjon (hvis du bruker Linux), system OS-navn osv. bruker Python. For å få navnet på operativsystemet kan vi bruke modulene os eller sys. Disse modulene er inkludert i Pythons standardbibliotek, så vi trenger ikke å installere dem for bruk i prosjektene våre. Du kan åpne pythonskallet ved å skrive Python eller python3 i systemterminalen.

python

ELLER

python3

Du kan få typen OS ved hjelp av os biblioteket ved å kjøre følgende kode i python-skallet.

>>> importer os >>> os.navn 'posix'

Som du kan se, hadde den ovennevnte koden posix for Linux-operativsystemet. Hvis du bruker Windows, vil det vise 'nt.'Du kan også få navnet på operativsystemet ved å bruke sys-modulen. Du kan kjøre følgende kode for å se hvordan den fungerer.

>>> import sys >>> sys.plattform 'linux'

Som du ser, har resultatet av plattformfunksjonen til sys-modulen vist navnet Linux mens jeg bruker det. Du får "vinn 32" for Windows.

Du kan bruke uname funksjonen til os-modulen for å få en detaljert beskrivelse, se følgende kode for å se hvordan den fungerer.

>>> importer os >>> os.uname () posix.uname_result (sysname = 'Linux', nodename = "kali", release = "5.6.0-kali2-amd64 ", version =" # 1 SMP Debian 5.6.14-2kali1 (2020-06-10) ", maskin =" x86_64 ")

Denne koden har vist at jeg bruker Kali Linux. Denne koden er bare tilgjengelig for Linux OS. Det gjelder ikke Windows.

2. Få brukernavnet ved hjelp av Python

Du kan få navnet på den nåværende brukerinnloggingen i systemet ved hjelp av Python ved å skrive følgende kode i pythonskallet:

>>> importer os >>> os.getlogin () 'roshan'

3. Få størrelsen på terminalen

Du kan også få størrelsen på terminalen ved hjelp av Python. Kjør følgende kode i pythonskallet.

>>> importer os >>> os.get_terminal_size () os.terminal_størrelse (kolonner = 80, linjer = 23)

Dette vil skrive ut størrelsen på den nåværende terminalen. Dette vil skrive to verdier antall kolonner og antall linjer. Du kan få tilgang til individuelle kolonner eller linjer ved hjelp av følgende kode. Kopier følgende program i et filnavn it terminal.py og kjør den med python3 terminal.py.

importer os col, linjer = os.get_terminal_size () utskrift ("Antall kolonner:", kol) utskrift ("Antall linjer:", linjer)

Du ser kanskje utdataene fra programmet som vist nedenfor:-

Produksjon

Utføre grunnleggende operasjoner med filer og kataloger

La oss nå sjekke hvordan vi kan arbeide med filene og katalogene ved hjelp av Python. Python har blitt et modent programmeringsspråk, og det kan nå gjøre oppgaver som vi trenger for å lære forskjellige programmeringsspråk. Python er også flink til å automatisere flere oppgaverelaterte filer og mapper, og ved å bruke følgende koder på en automatisert måte. Du kan utføre automatisering som mapperensing, flytting av filer med bestemte formater fra ett sted til et annet, osv.

4. Få den nåværende katalogstien

For å få den nåværende katalogbanen, kan vi bruke getcwd () -funksjonen til os-modulen; det er omtrent som pwd-kommandoen til Linux shell.

>>> importer os >>> os.getcwd () '/ home / roshan / Documents / fosslinux'

Som du kan se, hadde koden sendt banen til katalogen der jeg bruker python-skallet.

5. Liste opp alle filer og mapper som er tilstede i en katalog

Du kan også liste opp alle filene og underkatalogene i en katalog. For å liste filene og mappene i den gjeldende katalogen, kjør følgende kode:

>>> importer os >>> os.listdir () 

Utgangen ligner på noe som bildet nedenfor. Ovennevnte kode viser en pythonliste over alle filene og katalogene som er tilstede i gjeldende arbeidskatalog.

Du kan også liste opp filene og underkatalogen i en annen katalog ved å oppgi banen til katalogen i parentes. Se følgende kode for å forstå hvordan den fungerer.

>>> importer os >>> os.listdir ("/ root / Desktop") 

Det kan hende du ser utdataene fra koden ovenfor som vist i det følgende bildet

Resultatet gitt av listdir ("D: / python") -metoden er en pythonliste over alle filene og katalogene som finnes i katalogen "D: / python". Hvis katalogbanen du oppgir i parentes ikke finnes i systemet, vil den øke a FileNotFoundError.

6. Opprette en katalog

For å opprette en katalog med Python, må du bruke mkdir funksjon av Pythons os-modul. La oss se hvordan du oppretter en katalog ved hjelp av Python. Kjør følgende kode i pythonskallet.

>>> importer os >>> os.mkdir ("os")

Dette vil opprette en katalog os i den gjeldende katalogen. Hvis katalogen allerede eksisterer, vil du få en FileExistError; Det kan se ut slik:

Sporing (siste samtale sist): Fil "", linje 1, i  FileExistsError: [Errno 17] Filen eksisterer: 'os'

For bedre feilhåndtering ved bruk prøve og unntatt. Du må bare kopiere koden og lime den inn i en fil som heter makedir.py og kjør python-programmet ved hjelp av kommandoen python3 makedir.py i terminalen din;

importer os sti = "os" prøv: os.mkdir (sti) utskrift ("Katalogen er opprettet vellykket") unntatt FileExistsError: utskrift ("Katalogen" + sti + "eksisterer allerede")

Du ser kanskje utdataene som i følgende bilde:

Forskjellen i den første koden og den ovennevnte koden er at det andre programmet bruker en prøve / unntatt metode for feilhåndtering. Rollen til prøv / unntatt-metoden i koden ovenfor er at pythontolkeren vil prøve å kjøre koden under prøveblokken først, og hvis den har en FileExistError, vil den utføre koden under den unntatte blokken. Dette er en god praksis å bruke prøve / unntatt blokk i et pythonprogram, slik at du enkelt kan oppdage feil og kan kjøre kodeblokken som er tilstede i den unntatte delen hvis det er en feil.

7. Gi nytt navn til en fil

Du kan også gi nytt navn til en fil ved hjelp av Python. For å gi nytt navn til en fil, bruk omdøpningsfunksjonen til os-modulen. Gi nytt navn funksjonen godtar to viktige argumenter, det første argumentet er banen til filen du vil gi nytt navn, og den andre filen er navnet som du vil gi nytt navn til den originale filen. Se koden presentert nedenfor for å se hvordan den fungerer, skriv koden i pythonskallet og se hvordan den fungerer.

>>> importer os >>> os.endre navn ("fil1.txt, file2.tekst")

Ovennevnte kode vil gi nytt navn til filen fil1.tekst med navnet fil2.tekst. Dette viser en feil hvis filen fil1.tekst ikke er tilstede i den gitte stien, så gi den rette stien.

8. Slett en fil

For å slette en fil, må du bruke fjerne() funksjon av os modul. Se på følgende kode for å se hvordan du gjør dette -

>>> importer os >>> os.remove ("prøve.tekst")

Dette vil slette filen prøve.tekst til stede i gjeldende katalog; Du kan også angi filens bane hvis den finnes i andre kataloger. Hvis filen ikke eksisterer i den gitte banen, får du en FileNotFoundError. Bruk unntakshåndteringsmetoden som er beskrevet i forrige underemne for å håndtere feil.

9. Slett en katalog

Hvis det følger med sti er en katalog, vil du få OSError fordi denne funksjonen ikke kan brukes til å fjerne en katalog. Bruk rmdir ()metode for å fjerne katalogene. Se følgende kode for bedre illustrasjon-

>>> importer os >>> os.rmdir ("sample_dir")

Ovennevnte kode fjerner katalogen som heter sample_dir. GIve banen til mappene hvis de finnes i andre kataloger for å fjerne dem.

Konklusjon

Alt handler om forskjellige nyttige tips for effektiv henting av operativsystemet og annen informasjon du trenger når du bruker Python. Hvilke andre tips du har som du er villig til å dele? Gi oss beskjed i kommentarene nedenfor. Før du reiser, kan du også se opplæringen om hvordan du kjører shell-kommando med Python, som viser deg hvordan du bruker Linux-shell-kommandoer enkelt under python-programmer.

Hvordan vise OSD-overlegg i fullskjerm Linux-apper og spill
Å spille fullskjermspill eller bruke apper i distraksjonsfri fullskjermmodus kan avskrekke deg fra relevant systeminformasjon som er synlig i et panel...
Topp 5 spillfangstkort
Vi har alle sett og elsket streaming av spill på YouTube. PewDiePie, Jakesepticye og Markiplier er bare noen av de beste spillerne som har tjent milli...
Hvordan utvikle et spill på Linux
For et tiår siden ville ikke mange Linux-brukere forutsi at deres favorittoperativsystem en dag ville være en populær spillplattform for kommersielle ...