Python 是一种时尚和现代的编程语言。 由于它易于学习,因此在初学者中特别受欢迎。 Python 非常强大,我们可以使用它与操作系统进行交互。 在 Linux 中,python 作为替代 bash 脚本的命令语言。 它预装在大多数发行版中,因为它依赖于许多工具和软件。 如果不是,安装起来也毫不费力。
在本教程中,我们将了解如何使用 Python 运行 Linux 命令。 这背后的想法是自动化任务并节省时间。 我在本教程中使用 Ubuntu。
使用 Source 在 Debian/Ubuntu 上安装最新的 Python
先决条件
我们需要一个python环境。 如果您使用的是最新的发行版,则它已预先安装。 您可以使用以下命令进行检查。
❯ python3 --version
要安装 python,请运行以下命令 –
❯ sudo apt install python3 -y
此外,如果您对终端和一些 Linux 命令有一定的了解,那就太好了。
Python 中的操作系统模块
OS 库提供基于操作系统的功能,并允许我们与操作系统进行交互。 包自带python安装,无需单独安装。 该库易于使用,并包含读取和写入操作。
让我们编写我们的第一个程序并获取系统信息——
启动你最喜欢的文本编辑器(我正在使用 编辑) –
gedit system_info.py
复制以下代码并保存文件 –
import os os.uname()
您可以像下面这样运行文件 –
python3 system_info.py
输出
这 uname()
方法返回当前操作系统的名称、版本和版本等信息。这只是操作系统模块的概述,现在让我们运行终端命令。
os.system()
这 os.system()
方法将命令作为字符串并在子shell中执行。 限制与 system()
C语言中的方法。 该方法取决于系统。
代码应该使用终端执行,就像您在 IDLE 中运行代码一样 “0” 作为输出,并没有真正发生。
让我们运行我们的第一个命令——
import os os.system('ls')
输出
ls 命令用于列出相应目录中的项目。
接受 Linux 命令作为用户输入
让我们从用户那里获取输入,然后将其与我们的命令连接起来。 为了我: 在从用户那里获取文件夹名称的同时创建文件夹。
代码
import os name = input("Enter a folder name : ") print("n") os.system('mkdir ' + name)
输出
使用 Python 执行 Linux 命令的完整代码
我开发了一个简单的脚本,让你们了解如何使用 python 来简化工作。
import os while (True): print("1) List Directories") print("2) Create a file") print("3) Create a directory/folder") print("4) Ping a server") print("5) Neofetch") print("6) Check Python Version") print("7) Check Java Version") print("8) Exit") ch = int(input("Enter Your Choice : ")) if ch == 1: os.system('lsd') elif ch == 2: f_name = input("Enter file name : ") e_name = input("Enter file extension : ") os.system('touch ' + f_name + '.' + e_name) elif ch == 3: name = input("Enter folder name : ") os.system('mkdir ' + name) elif ch == 4: s = input("Enter address(Press enter for default - google.com) : ") p = input("Enter number of packer(press enter for default - 10 : )") o = input("Do you want the output in a txt file -- y | n -- :") # p = int(p) if (s == ''): s="google.com" if (p == ''): p = '10' if (o == 'y'): os.system('ping ' + s + ' -c ' + p + ' > ping-output.txt') else: os.system('ping ' + s + ' -c ' + p) elif ch == 5: os.system('neofetch') elif ch == 6: os.system('python --version') elif ch == 7: os.system('java --version') elif ch == 8: break else: print("Invalid Choice")
这将向用户显示一个菜单,用户必须选择任何一个选项。 由于脚本处于 while 循环中,菜单将不断地呈现给用户。 您可以在菜单中添加更多选项。
输出
包起来!
这只是操作系统模块的一小部分。 它有更多的功能和方法。 您可以在 shell 配置文件中设置您开发的脚本的路径。 这将允许您从任何地方运行脚本。 此外,创建 cron 作业以不时自动执行。 希望这篇文章对你有所帮助。
您可能感兴趣的文章
- 在 Python 中用 10 行或更少的代码编写一个反向 Shell
- 如何使用 Cronjob 配置自动更新?
- 如何在 Linux 中每 X 秒运行一次命令?