有没有办法在Linux环境下运行.bat文件?我有几个.bat文件,它们的目的是调用mvn install:install-file脚本。因此,脚本中没有任何操作系统依赖项。谢谢你
tyky79it1#
你可以使用wine或dosbox,但是一般来说,没有已知的用于linux的bat解释器。然而,有各种各样的windows unix shell的实现,甚至有一个标准的工具包,Windows Services for UNIX(a.k.a. SUA),其中包括ksh实现和许多其他不错的东西,所以如果你想让它对操作系统透明,你可以考虑使用它,并用符合POSIX的shell脚本语言编写脚本。
wine
dosbox
bat
Windows Services for UNIX
SUA
ksh
mvn <params>
x
/bin/bash script.bat
mrfwxfqh2#
Linux终端类型
wine cmd
之后,windows cmd将在您的终端上播放。转到文件夹,您的 bat 文件所在的位置,并键入 bat 文件名,然后按回车键。它将成功运行。
bpzcxfmw3#
简单的答案是肯定的,有一种方法可以在Linux上运行它,只要:
.bat
$PATH
您需要使文件可执行,并且很可能在文件的内容前面加上一行,告诉Linux使用哪个shell运行脚本。类似于bash:#!/bin/bash
#!/bin/bash
az31mfrm4#
安装dosboxsudo apt install dosbox用dosbox运行它从Linux操作系统装载主文件夹。在dosbox内键入MOUNT D /home/<your user>切换文件夹驱动器D:现在,如果您在用户主目录中有一个名为my.bat的文件,则在doxbox中运行它MY.BAT即可。
sudo apt install dosbox
MOUNT D /home/<your user>
D:
my.bat
MY.BAT
mpgws1up5#
你可以用notepad在linux中轻松运行任何批处理文件,你可以在任何linux应用商店中找到notepad。我从Snap Store下载了它,它是Linux的。Notepad++有一个名为run的选项,它将在任何环境下为您运行批处理文件
qvtsj1bj6#
与其他人所说的相反,在linux上至少有一个.bat文件的解释器:http://dcjtech.info/topic/winescript/
djmepvbi7#
不可以。bat文件是windows shell脚本,它们可能执行windows命令并期望在windows环境中运行。您需要将它们转换为shell脚本,以便在Linux上运行它们,因为您的bash shell无法理解dos命令。幸运的是,如果安装文件脚本是真正独立于平台的,那应该很容易。如果您提供一个例子,我们可以帮助您翻译。
kyvafyod8#
您可以编写与.bat脚本等效的shell脚本。
8条答案
按热度按时间tyky79it1#
你可以使用
wine
或dosbox
,但是一般来说,没有已知的用于linux的bat
解释器。然而,有各种各样的windows unix shell的实现,甚至有一个标准的工具包,Windows Services for UNIX
(a.k.a.SUA
),其中包括ksh
实现和许多其他不错的东西,所以如果你想让它对操作系统透明,你可以考虑使用它,并用符合POSIX的shell脚本语言编写脚本。mvn <params>
,你可以确保文件有执行权限(x
标志),在它前面加上一个shell解释器(比如/bin/bash script.bat
),然后尝试一下。但成功并没有保证。mrfwxfqh2#
Linux终端类型
之后,windows cmd将在您的终端上播放。转到文件夹,您的 bat 文件所在的位置,并键入 bat 文件名,然后按回车键。它将成功运行。
bpzcxfmw3#
简单的答案是肯定的,有一种方法可以在Linux上运行它,只要:
.bat
文件运行的命令位于Linux机器上的$PATH
中您需要使文件可执行,并且很可能在文件的内容前面加上一行,告诉Linux使用哪个shell运行脚本。类似于bash:
#!/bin/bash
az31mfrm4#
安装dosbox
sudo apt install dosbox
用
dosbox
运行它从Linux操作系统装载主文件夹。在dosbox内键入
MOUNT D /home/<your user>
切换文件夹驱动器
D:
现在,如果您在用户主目录中有一个名为
my.bat
的文件,则在doxbox中运行它MY.BAT
即可。mpgws1up5#
你可以用notepad在linux中轻松运行任何批处理文件,你可以在任何linux应用商店中找到notepad。我从Snap Store下载了它,它是Linux的。Notepad++有一个名为run的选项,它将在任何环境下为您运行批处理文件
qvtsj1bj6#
与其他人所说的相反,在linux上至少有一个
.bat
文件的解释器:http://dcjtech.info/topic/winescript/djmepvbi7#
不可以。
bat
文件是windows shell脚本,它们可能执行windows命令并期望在windows环境中运行。您需要将它们转换为shell脚本,以便在Linux上运行它们,因为您的bash shell无法理解dos命令。幸运的是,如果安装文件脚本是真正独立于平台的,那应该很容易。如果您提供一个例子,我们可以帮助您翻译。kyvafyod8#
您可以编写与.bat脚本等效的shell脚本。