如何从 linux 命令提示符运行 .exe

use*_*749 28 linux command-line

我是 Linux 新手。我目前正在尝试编写一个命令行,该命令行应该在 abc 文件夹中执行 *.exe。

我试过了

% cd abc info.exe
Run Code Online (Sandbox Code Playgroud)

但错误说no such file or directory

有什么建议?

Joe*_*Fan 31

尝试:

abc/info.exe
Run Code Online (Sandbox Code Playgroud)

但如果它真的是一个 Windows 程序,你将需要安装“wine”,然后执行:

wine abc/info.exe
Run Code Online (Sandbox Code Playgroud)

但是只有一些 Windows 程序可以在 wine 下运行。


Roy*_*ico 11

这个答案将这个问题的其他答案合二为一。

info.exe 文件将在 Linux 或 Windows 下执行,但不能同时在两者下执行。

在 Windows 下执行

如果文件是 windows 文件,它不会在 Linux 下自行运行。因此,如果是这种情况,您可以尝试在 Windows 模拟器 (WINE) 下运行它。如果它与wine 不兼容,那么您将无法在Linux 下执行它。

在开始之前,您需要安装 wine。安装 wine 所需的步骤因您使用的 linux 平台而异。例如,如果您正在安装 ubuntu,您可以在 google 上搜索“Ubuntu install wine”。

一旦你安装了 wine,你就可以执行这些命令了。

cd abc/
wine info.exe
Run Code Online (Sandbox Code Playgroud)

在 Linux 下执行

如果你知道这个文件在 linux 下运行,那么你会想要执行这些命令:

切换到你的 abc 目录

cd abc/
Run Code Online (Sandbox Code Playgroud)

然后,你要更改权限,允许一个LL用户通过电子邮件X ecute这个文件(+ X)。
你也可以让刚刚ü SER到E X ecute(U + X)

chmod a+x info.exe
Run Code Online (Sandbox Code Playgroud)

启动程序, ./ 告诉命令行在当前路径中查找要执行的文件(如果“当前”目录不在 $PATH 环境变量中。

./info.exe
Run Code Online (Sandbox Code Playgroud)


小智 7

你不能 :) exe 只是微软的。现在如果你有一个 linux 可执行文件,你可以这样做:

cd folder
chmod +x file
./file
Run Code Online (Sandbox Code Playgroud)

  • 这通常是错误的。许多 Windows 和 DOS EXE 可以使用模拟器在 Linux 上运行,例如 `wine` 或 `dosbox`。 (9认同)

Byr*_*ock 5

在 Linux 上,您授予文件可执行权限。决定是否可以执行的不是扩展名(如在 Windows 上)。

假设您有一个可以在 Linux 中执行的有效文件(不是 windows/dos 文件),请执行以下操作:

cd abc
chmod a+x info.exe
./info.exe
Run Code Online (Sandbox Code Playgroud)

请注意,shell 需要前导 ./ 才能在当前目录中查找文件!

不过,这确实属于超级用户。

  • 第一行改变目录,第二行告诉linux它是可执行的,第三行运行程序。 (2认同)