我可以在 Ubuntu 中运行 Windows .bat 文件吗?

我可以在 Ubuntu 中运行 Windows .bat 文件吗?

我想在 ubuntu 中运行一个 .bat 文件,但它只是打开文本编辑器。这是 .bat 文件的代码(你可以播放它):

@echo off
set /a guessnum=0
set /a answer=%RANDOM%
echo Welcome to the Guessing Game! 
echo. 
echo Try and Guess my Number! 
echo. 
echo. 
goto guess
:guess
set /p guess=
set /a guessnum=%guessnum% +1
if %guess% GTR %answer% ECHO Lower! 
if %guess% LSS %answer% ECHO Higher! 
if %guess% EQU %answer% GOTO EQUAL
goto goto guess
:equal
echo Congratulations, You guessed right!!! 
echo. 
echo It took you %guessnum% guesses. 
echo. 
pause

答案1

从表面上看,大部分内容(使用“echo”命令的部分)应该可以工作,但批处理特定部分(例如“goto”)则不行。但您应该能够将其转换为 shell 脚本,然后它可能会工作,或者您可能能够在 Ubuntu 中模拟它。

编辑:我已经转换了它,但它似乎不完整。它似乎转换了“if”部分,但没有转换其他部分。如果它有效,请告诉我(我非常怀疑它),我也会亲自尝试。我希望它能有所帮助。(版主,如果可能的话,请使用完全转换的脚本更新此答案。)

export -a guessnum=0
export -a answer=${RANDOM}
echo Welcome to the Guessing Game! 
echo ""
echo Try and Guess my Number! 
echo ""
echo ""
export -p guess=
export -a guessnum=${guessnum} +1
if ${guess% GTR %answer} echo Lower! 
if ${guess% LSS %answer} echo Higher! 
if ${guess% EQU %answer} echo EQUAL
goto top
:equal
echo Congratulations, You guessed right!!! 
echo ""
echo It took you ${guessnum} guesses. 
echo ""
pause

答案2

如果您安装wine(请参阅https://wiki.winehq.org/Ubuntu有关更多信息,您可以使用批处理文件将该文件添加到系统中。

安装完成后wine(使用sudo apt install wine64命令安装);运行命令wineconsole。将出现一个类似于 Windows“命令提示符”的窗口。转到包含 Windows 批处理文件的目录,然后输入其名称来运行它。

或者,您可以在 Linux 终端中切换到包含批处理文件的目录(使用Ctrl++键盘快捷键打开终端)并直接运行。AltTwineconsole your_batch_file.bat

笔记:您的批处理文件包含错误:您应该:top在第 8 行之后放置一个标签。

相关内容