如何执行linux控制台应用程序/

如何执行linux控制台应用程序/,linux,console-application,Linux,Console Application,哇,首先让我说,我已经数不清我在这个网站上找到了多少答案。你们太棒了 所以,我发布的第一个问题是非常基本的,所以我希望它不会受到太多的欢迎。我在谷歌和这里都搜索了答案,但没有找到答案 我刚刚在linux上用code:blocks创建了一个控制台应用程序,编译后在code:blocks中运行。很好用。然后我打开LinuxBashShell,cd,找到二进制文件所在的位置,然后试着从那里运行它,没有骰子。我的一个linux朋友过来告诉我要试试。维奥拉,成功了。我目瞪口呆,因为我认为./只需要执行sh

哇,首先让我说,我已经数不清我在这个网站上找到了多少答案。你们太棒了

所以,我发布的第一个问题是非常基本的,所以我希望它不会受到太多的欢迎。我在谷歌和这里都搜索了答案,但没有找到答案

我刚刚在linux上用code:blocks创建了一个控制台应用程序,编译后在code:blocks中运行。很好用。然后我打开LinuxBashShell,cd,找到二进制文件所在的位置,然后试着从那里运行它,没有骰子。我的一个linux朋友过来告诉我要试试。维奥拉,成功了。我目瞪口呆,因为我认为./只需要执行shell脚本。我检查了g++生成的二进制文件的文件权限,它们是:-rwxr-x

我还找到了其他关于使用代码块构建Hello World应用程序的教程,它们还说要使用在命令行上执行/

为什么会这样?另外,如何构建控制台应用程序或任何其他二进制应用程序,以便不需要./来执行它?我假设这是可能的,因为绝大多数内置linux命令(如grep等)都不需要./来执行


谢谢,伙计们。

要在类UNIX系统上运行可执行文件,您需要了解路径解析。如果可执行文件的路径未包含在
path
环境变量中(并且
有时不包含),则需要自己指定它

通过将
附加到
路径
,如下所示:

export PATH=$PATH:.

您可以从当前工作目录运行可执行文件,而无需添加
/
。但是,请注意,这在多用户系统中可能是不安全的,因为其他用户可以在组或世界可写目录中提供可执行文件供您运行,而无需您的显式权限。

您应该将应用程序路径添加到path环境变量:。在Append中发布此类问题。通往这条小路的是一个很大的安全漏洞。哦,我明白了,所以像grep、cat等程序可以在没有./is/bin和其他类似区域的情况下执行?是的,这确实有效。我刚刚在路径中添加了“Release”目录,g++编译器在其中构建了二进制文件,然后在没有./Works的情况下执行它!谢谢大家,现在我知道了,知道是成功的一半!