有没有办法在Linux环境下运行.bat文件? 我有几个.bat文件,他们的目的是调用mvn install:install-file脚本。因此,脚本中没有任何操作系统依赖。
谢谢,
答案 0 :(得分:9)
您可以使用wine
或dosbox
,但一般情况下,Linux上没有已知的bat
解释器。但是,有各种各样的unix shell用于windows的实现,甚至还有一个标准的工具包,Windows Services for UNIX
(又名SUA
),包括ksh
实现和许多其他不错的好东西,所以如果你想要操作系统透明,你可以考虑使用它并用符合POSIX标准的shell脚本语言编写脚本。
---编辑---
另一方面,如果您的脚本包含除<{1}}以外的其他,则可以确保该文件具有执行权限(mvn <params>
标志),并在其前面添加shell解释器(如x
)并且可以使用它。但成功并不能保证。
答案 1 :(得分:2)
简单的答案是肯定有一种方法可以在Linux上运行它:
.bat
文件运行的命令位于Linux机器上的$PATH
您需要使文件可执行,并且很可能使用一行来预先知道文件的内容,该行告诉Linux哪个shell运行脚本。对于bash来说是这样的:#!/bin/bash
答案 2 :(得分:1)
在Linux终端类型上
wine cmd
之后,Windows cmd将在您的终端上播放。转到.bat文件所在的文件夹,然后键入bat文件名,然后按Enter。它将成功运行。
答案 3 :(得分:0)
没有。 bat
文件是Windows shell脚本,它们可能执行Windows命令并期望在Windows环境中运行。你需要将它们转换为shell脚本才能在linux上运行它们,因为你的bash shell无法理解dos命令。幸运的是,如果安装文件脚本真的与平台无关,那应该很容易。如果您举例,我们可能会帮您翻译。
答案 4 :(得分:0)
安装dosbox
sudo apt install dosbox
运行它
dosbox
从Linux操作系统安装您的主文件夹。在dosbox中输入
MOUNT D /home/<your user>
切换文件夹驱动器
D:
现在,如果您的用户主目录中有一个名为my.bat
的文件,那么在doxbox中运行它
MY.BAT
答案 5 :(得分:0)
您可以使用notepad++在linux中轻松运行任何批处理文件,您可以在任何linux应用商店中找到notepad++。我是从适用于 linux 的 snap 商店下载的。 Notepad++ 有一个名为 run 的选项,它会在任何环境下为您运行批处理文件
答案 6 :(得分:-1)
您可以将.bat脚本的等效内容编写为shell脚本。