Python 中的命令行自动化

pythonserver side programmingprogramming更新于 2024/1/13 14:56:00

Python 附带命令行,用于在执行 Python 应用程序时管理用户输入和特定形式的数据输入。因此,用户可以输入数据并完成任务,否则这是不可能的。这也使更复杂的任务和增加的程序交互成为可能。

要与计算机通信并执行程序,人们使用命令行界面 (CLI) 和基于文本的用户界面 (UI)。命令行界面的其他名称包括字符用户界面、控制台用户界面和命令行用户界面。

在本文中,您将了解什么是 Python 命令行界面 (CLI) 以及如何在 Python 中自动化命令行(在自动化任务的整个过程中都会触发一个框架。这个框架作为我们的编程脚本,使活动能够自主、独立地完成,而无需用户参与。)。此外,您还将看到一些实现它们的代码示例。

Python 简介

Python 是一种广泛使用的高级、通用、面向对象和解释型语言。要使用 Python 完成任务,只需提供逻辑,因为 Python 本身会处理大部分编码工作。 Python 拥有一个高度全面的库,其中包含适用于各种用途的预定义代码。

Python 拥有一个规模庞大的开发者社区,这为新手和经验丰富的用户提供了额外的优势,因为永远不会出现任何问题。

命令行界面简介

一种与计算机程序交互的方法,其中用户(或客户端)以连续文本行(命令行)的形式向程序发出命令,称为命令行界面或命令语言解释器 (CLI),也称为命令行用户界面、控制台用户界面和字符用户界面 (CUI)。

用户可以通过命令行界面 (CLI) 与基于文本的 shell 解释器中的程序进行通信。Shell 解释器包括 Linux 上的 Bash 或 Windows 上的命令提示符等程序。 shell 解释器会显示命令提示符并提供命令行界面。

要使用 python 命令运行 Python 脚本,我们必须执行下面描述的过程 -

命令"python"可用于启动 Python 脚本。为此,请打开命令窗口并输入"python"(或"python3",如果您同时安装了两个版本),然后输入脚本的路径

示例

python3 hello.py Hello World, Welcome!

Hello World, Welcome!如果一切按预期进行,则按下 Enter 键时将出现一次消息"Hello World, Welcome"。

Python 中的命令行自动化

CLI 可以编写用于基本自动化的脚本,并且它是使用 Web 服务 API 编写更复杂代码的有用工具。

Python 附带一个命令行,用于在执行 Python 应用程序时管理用户输入和特定形式的数据输入。因此,用户可以输入数据并完成原本不可能完成的任务。这还可以实现更复杂的工作和增加程序交互。

如何在 Python 中自动化命令行?

命令行中可以给出各种命令,因此可以在计算机或 PC 上实现目的,例如打开任何应用程序或关闭计算机。可以使用命令行上的"help"命令找到我们可以提供的命令。使用help命令我们可以得到所有可以在命令行上写的命令。

在本文中,我们将使用python的'os'模块,通过python编程语言来操作命令行。我们来看看这里的代码

示例

import os os.system('cmd ')

通过运行上述代码,我们可以使用 python 在 PC 中打开命令提示符。 system() 是调用我们想要使用操作系统打开的应用程序的方法。

现在,这是我们打开命令提示符的方法,但要自动使用命令提示符,我们必须添加更多命令作为 system() 方法的参数。

有两种方法可以自动使用命令行执行任务,我们可以在 cmd 中添加"/k"或"/c",然后编写要执行的命令。

  • 方法 1 使用"/k"

    import os os.system('cmd /k')
  • 方法 2 使用'/c'

    import os os.system('cmd /c')

我们先讨论一下如何使用'/k'

不建议使用'/k'命令,因为使用后不会关闭提示符,这如果数据敏感或处于实时项目中,可能会造成一些安全漏洞。

使用'/c'命令是安全的,因为编译后它将关闭进程并在编译后返回零。

注意 - 在本文中,我们将仅使用'/c'方法。

现在,让我们转到完整代码以运行任何命令

示例

import os os.system('cmd /c "command" ')

这里的命令是我们要运行的命令,它将被括在双引号中,例如

示例

import os os.system('cmd /c "date" ')

运行此代码后,我们将自动在命令行上获取数据。

示例 

import os os.system('cmd /c "start chrome" ')

运行此命令后,如果命令行提示符本身未给出命令,则将打开命令行提示符,之后, chrome 将打开。

为了使事情自动化,我们可以使用 python 库时间并给出一些延迟,以便事情在一段时间后工作。

此外,要给出两个或更多命令,我们可以使用 python 编程语言的"and"运算符,命令将按照双引号中写的方式运行。例如

示例

import os
os.system('cmd /c "date && start chrome" ')

在上面的代码中,首先,日期会出现在屏幕上,然后 chrome 窗口将打开。

可以看到一个时间延迟的示例,使用时间库在任务中提供一些延迟

示例

import time import os for i in range(5): os.system('cmd /c "date"') time.sleep(5)

由于我们使用了时间库的 sleep 方法,上述代码将每五秒在命令行中显示一次日期。

结论

Python 附带一个命令行,用于在执行 Python 应用程序时管理用户输入和特定形式的数据输入。要与计算机通信并执行程序,可以使用命令行界面 (CLI) 和基于文本的用户界面 (UI)。我们使用 Python 的"os"模块通过 Python 编程语言使用命令行。使用"/c"命令是安全的,因为编译后它将关闭进程并在编译后返回零。此外,要给出两个或更多命令,我们可以使用 Python 编程语言的"and"运算符,命令将按照双引号中写的方式运行。


相关文章