Skip to main content

使用 Python 运行 Windows 批处理文件 (.bat)

项目描述

批处理文件.py

一个 Python 库,用于执行通常只能在 Windows 上运行的简单批处理文件 (.bat)。安装后,您可以通过运行获得一个 REPL(实时命令行)进行测试python3 -m batchfile

当我在高中时,我曾经使用 Windows 批处理文件编写文本冒险游戏。2020 年 10 月,我编写了一个 Python 脚本来解释批处理文件。这是一个有趣的实验,看看我是否可以在不引入太多复杂性的情况下使用 Python 在 Ubuntu 上玩未经更改的原始批处理文件游戏。

有关如何使用此库将批处理文件转换为网站的示例,请参阅我的bat2web 存储库。你一直想做的事情,当然:)

怎么玩

  • pip install .通过在与文件相同的文件夹中运行来安装库setup.py
  • /games进入将启动游戏的 python 脚本的目录。
  • 到目前为止,唯一受支持的游戏是我 16 岁时编写的游戏,您可以funtimes.py在 Linux、Windows 或 MacOS 上使用 Python 3.6+ 运行该游戏。
  • 在 Windows 上,您也可以FUNTIMES.bat在 funtimes 目录中使用不使用 Python 来玩原始游戏
  • 原始游戏实际上也可以wineconsole在 Ubuntu 中使用,除了罕见的数学问题
  • Funtimes也可以在网络浏览器中播放

运行其他批处理文件

我绝对不打算支持每个批处理文件,但如果类似的批处理文件游戏可以在不引入太多复杂性的情况下工作,那就太好了。我在 2010 年编写的另一个名为“招聘”的游戏作为示例包含在内,但它还不能运行。最终,如果这个库支持Time Streamer那就太棒了。

大多数游戏运行的主要障碍是缺乏对括号和引号的支持。包含一些 hacky 解决方案来处理 Funtimes 中的简单案例,但最终我必须编写一个标记器/词法分析器来正确处理这些复杂的结构。一旦我这样做,这应该会大大提高兼容性!

另一个障碍是许多批处理文件使用奇怪的 .EXE 或 .COM 文件来执行各种任务,但是当我发现这些情况时,我会尝试将它们作为标准函数包含在内。我的主要目标是支持批处理文件游戏,所以我不担心某些东西是否是“纯”批处理文件。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

batchfile.py-0.5.tar.gz (10.2 kB 查看哈希

已上传 source

内置分布

batchfile.py-0.5-py3-none-any.whl (10.8 kB 查看哈希

已上传 py3