首页 > 解决方案 > 我有几个 Linux 命令,我想在 Windows 机器上运行。如何在 Windows 上从 Python 运行 Linux 命令

问题描述

我有一些会生成令牌的 Linux 命令。我已经在 Linux 机器上使用来自 Python 的 OS 库自动化了这些命令。它工作正常。

但是,当我在 Windows 中尝试相同的代码时,它什么也没有返回。

以下是我尝试过的代码。

uniqueKey = os.popen('echo -n kittu | base64')
data = uniqueKey.read()
print data

在Linux中我得到以下输出

a210dHU=

在 Windows 中它是空的。

标签: pythonlinuxwindowsbatch-file

解决方案


命令特定于操作系统。例如,在 Linux 上,ls列出目录中的文件,而在 Windows 上,它是dir.

Windows 有echo类似 Linux 但不支持该标志-n— 这两个命令不相关,只是名称重合。

Windows 也没有base64命令。

它也不是|用来表示管道的,尽管我相信 PowerShell 确实如此。


为什么要使用操作系统命令?Python 原生支持 base64 编码:

uniqueKey = base64.b64encode('kittu')

推荐阅读