python - 我有几个 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 中它是空的。
解决方案
命令特定于操作系统。例如,在 Linux 上,ls
列出目录中的文件,而在 Windows 上,它是dir
.
Windows 有echo
类似 Linux 但不支持该标志-n
— 这两个命令不相关,只是名称重合。
Windows 也没有base64
命令。
它也不是|
用来表示管道的,尽管我相信 PowerShell 确实如此。
为什么要使用操作系统命令?Python 原生支持 base64 编码:
uniqueKey = base64.b64encode('kittu')
推荐阅读
- react-native - undefined 不是对象(评估 '_this.props.navigation') Expo React Native
- reactjs - React.js:使用 axios POST 请求填充列表框
- mobx - 去抖动 mobx-react 和 props
- azure - 如何使用 Java 从 cosmos db 的集合中删除文档?
- visual-studio-code - Visual Studio Code 可以显示成员结构吗?
- reactjs - 为什么反应钩子 setState 总是执行两次
- http - 向 Gmail 发送电子邮件时如何处理打开的跟踪问题
- google-apps-script - 在 Google 表格中,是否可以通过下拉菜单更改其他下拉菜单
- javascript - 街机物理碰撞不会与墙壁水平碰撞?
- django - 如何反向序列化程序,如 ForeignKey 中的模型?