Програмиране

9 полезни съвета Работа с операционна система с помощта на Python

9 полезни съвета Работа с операционна система с помощта на Python

Има няколко ситуации, когато искаме да работим с операционната система, използвайки Python. Може да искаме да видим подробностите за потребителя или да пожелаем да изпълним някои задачи с файловете и директориите. Ако сте системен администратор, ще ви бъде полезно да работите с операционната система, тъй като можете лесно да автоматизирате някои повтарящи се задачи на операционната система с помощта на Python.

Въпреки че едни и същи задачи могат да се изпълняват с помощта на основния скрипт на черупки, той има ограничени възможности и няма да ви даде толкова много сила, колкото в Python. Освен това, един и същ python скрипт може да се използва навсякъде и също така да интегрира кодовете в други проекти на python. Има огромен брой модули за работа с операционната система в Python. Някои от модулите, които са включени в стандартната библиотека на Python и работят добре с операционните системи, са os / път, pwd, глобус, шутил, и подпроцес.

Преди да започнете с този урок, трябва да имате инсталиран Python. Ако вече не сте го инсталирали, вижте нашето ръководство стъпка по стъпка, за да инсталирате Python на Linux.

Извличане на информация за OS с помощта на Python

Понякога може да искате да извлечете необходимата информация за операционната система, като потребителско име, потребителски идентификатор или просто името на операционната система. Освен това може да се наложи програмата да знае на коя операционна система работи, за да може да ощипва задачите за различни операционни системи.

1. Получаване на подробности за операционната система

Можем да получим подробности за операционната система като платформа, име на дистрибуция на Linux (ако използвате Linux), име на системна операционна система и т.н. използване на Python. За да получим името на операционната система, можем да използваме модулите os или sys. Тези модули са включени в стандартната библиотека на Python, така че не е необходимо да ги инсталираме за използване в нашите проекти. Можете да отворите обвивката на python, като напишете Python или python3 в системния терминал.

питон

ИЛИ

python3

Можете да получите типа операционна система, като използвате операционна система библиотека чрез стартиране на следния код в обвивката на python.

>>> импортиране на os >>> ос.име 'posix'

Както можете да видите, горният код имаше display posix за операционната система Linux. Ако използвате Windows, той ще покаже 'nt.„Можете също да получите името на операционната система, като използвате модула sys. Можете да изпълните следния код, за да видите как работи.

>>> импортиране на sys >>> sys.платформа 'linux'

Както можете да видите, резултатът от функцията на платформата на модула sys показа името Linux, тъй като го използвам. Ще получите "win 32" за windows.

Можете да използвате uname функция на модула 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) ", машина =" x86_64 ")

Този код показа, че използвам Kali Linux. Този код е достъпен само за Linux OS. Не се отнася за Windows.

2. Получаване на потребителското име с помощта на Python

Можете да получите името на текущия потребителски вход в системата, използвайки Python, като напишете следния код в обвивката на python:

>>> импортиране на ос >>> ос.getlogin () 'roshan'

3. Получаване на размера на терминала

Можете също да получите размера на терминала с помощта на Python. Изпълнете следния код в обвивката на python.

>>> импортиране на ос >>> ос.get_terminal_size () os.терминал_размер (колони = 80, редове = 23)

Това ще отпечата размера на текущия терминал. Това ще напише две стойности броят на колоните и броят на редовете. Отделни колони или редове могат да бъдат достъпни чрез следния код. Копирайте следната програма в име на файл it terminal.py и го стартирайте с помощта на терминал python3.py.

внос os col, линии = os.get_terminal_size () print ("Брой колони:", col) print ("Брой редове:", редове)

Може да видите резултата от програмата, както е показано по-долу:-

Изход

Извършване на основни операции с файлове и директории

Нека сега проверим как да работим с файловете и директориите с помощта на Python. Python се превърна в зрял език за програмиране и вече може да изпълнява задачи, за които трябва да научим различни езици за програмиране. Python също е добър в автоматизирането на няколко задачи, свързани с файлове и папки, и като използва следните кодове по автоматизиран начин. Можете да извършите автоматизация като почистване на папки, преместване на файлове със специфични формати от едно място на друго и т.н.

4. Получаване на текущата директория

За да получим текущия път на директорията, можем да използваме функцията getcwd () на os модула; много прилича на командата pwd на Linux shell.

>>> импортиране на ос >>> ос.getcwd () '/ home / roshan / Documents / fosslinux'

Както можете да видите, кодът е извел пътя на директорията, в която използвам обвивката на python.

5. Избройте всички файлове и папки в дадена директория

Можете също да изброите всички файлове и поддиректории, присъстващи в дадена директория. За да изброите файловете и папките в текущата директория, изпълнете следния код:

>>> импортиране на ос >>> ос.listdir () 

Резултатът прилича на нещо като изображението по-долу. Горният код показва списък на python на всички файлове и директории, присъстващи в текущата работна директория.

Можете също да изброите файловете и поддиректориите, присъстващи в друга директория, като посочите пътя на директорията в скобите. Вижте следния код, за да разберете как работи.

>>> импортиране на ос >>> ос.listdir ("/ root / Desktop") 

Може да видите изхода на горния код, както е показано на следващото изображение

Резултатът, даден от listdir ("D: / python") метод е списък на python на всички файлове и директории, присъстващи в директорията "D: / python". Ако пътят до директорията, който предоставяте в скобите, не съществува в системата, тогава той ще изведе a FileNotFoundError.

6. Създаване на директория

За да създадете директория с помощта на Python, трябва да използвате mkdir функция на модула os на Python. Нека да видим как да създадем директория с помощта на Python. Изпълнете следния код в обвивката на python.

>>> импортиране на ос >>> ос.mkdir ("os")

Това ще създаде директория os в текущата директория. Ако директорията вече съществува, ще получите FileExistError; Може да изглежда по следния начин:

Проследяване (последно последно обаждане): Файл "", ред 1, в  FileExistsError: [Errno 17] Файл съществува: 'os'

За по-добро обработване на грешки при използване опитвам и с изключение. Трябва просто да копирате кода и да го поставите във файл с име makedir.py и стартирайте програмата python с помощта на командата python3 makedir.py във вашия терминал;

import os path = "os" try: os.mkdir (path) print ("Директорията е създадена успешно") с изключение на FileExistsError: print ("Директорията с име" + path + "вече съществува")

Може да видите изхода нещо като на следното изображение:

Разликата в първия код и горния код е, че втората програма използва метод try / Osim за обработка на грешки. Ролята на метода try / освен в горния код е, че интерпретаторът на python ще се опита първо да стартира кода под блока try и ако получи FileExistError, тогава ще изпълни кода под блока освен. Това е добра практика да се използва опит / освен блок в програма на python, за да можете лесно да откриете грешка и да стартирате кодовия блок в частта с изключение, ако има грешка.

7. Преименувайте файл

Можете също да преименувате файл с помощта на Python. За да преименувате файл, използвайте функцията за преименуване на os модула. Функцията за преименуване приема два важни аргумента, първият аргумент е пътят към файла, който искате да преименувате, а другият файл е името, на което искате да преименувате оригиналния файл. Вижте кода, представен по-долу, за да видите как работи, въведете кода в обвивката на python и вижте как работи.

>>> импортиране на ос >>> ос.преименуване ("файл1.txt, файл2.текст")

Горният код ще преименува файла файл1.текст с името файл2.текст. Това ще покаже грешка, ако файлът файл1.текст не присъства в дадения път, така че предоставете правилния път.

8. Изтрийте файл

За да изтриете файл, трябва да използвате Премахване() функция на операционна система модул. Погледнете следния код, за да видите как да направите това -

>>> импортиране на ос >>> ос.премахване ("проба.текст")

Това ще изтрие файла проба.текст присъства в текущата директория; можете също да посочите пътя на файла, ако той присъства в други директории. Ако файлът не съществува в дадения път, ще получите FileNotFoundError. Използвайте метода за обработка на изключения, описан в предишната подтема, за да се справите с грешки.

9. Изтрийте директория

Ако предоставеното път е директория, ще получите OSError защото тази функция не може да се използва за премахване на директория. Използвайте rmdir ()метод за премахване на директориите. Вижте следния код за по-добра илюстрация-

>>> импортиране на ос >>> ос.rmdir ("sample_dir")

Горният код ще премахне указаната директория sample_dir. Give пътя на папките, ако присъстват в други директории, за да ги премахнете.

Заключение

Това е всичко за различни полезни съвети за ефективно извличане на операционната система и друга информация, от която се нуждаете, докато използвате Python. Какви други съвети имате, които сте готови да споделите? Уведомете ни в коментарите по-долу. Преди да си тръгнете, може да искате да видите и урок за това как да изпълнявате командата на черупката с Python, която ви показва как лесно да използвате командите на черупката на Linux под програмите на python.

5 най-добри аркадни игри за Linux
В днешно време компютрите са сериозни машини, използвани за игри. Ако не можете да получите новия висок резултат, ще разберете какво имам предвид. В т...
Битка за Уеснот 1.13.6 Разработка освободена
Битка за Уеснот 1.13.6, издаден миналия месец, е шестата версия за разработка в 1.13.x серия и предоставя редица подобрения, най-вече на потребителски...
Как да инсталирате League Of Legends на Ubuntu 14.04
Ако сте фен на League of Legends, това е възможност за вас да тествате League of Legends. Имайте предвид, че LOL се поддържа на PlayOnLinux, ако сте п...