【问题标题】:Doubt regarding executable files in linux关于linux中可执行文件的疑问
【发布时间】:2010-05-08 01:34:15
【问题描述】:

我有一个用 C 编写的程序,名为 computeWeight.c,我使用以下代码编译它

chaitu@ubuntu:~$ gcc -Wall -o computeWeight computeWeight.c
//to execute it:
chaitu@ubuntu:~$ ./computeWeight

我有什么可以直接使用的机制吗,如下所述,

chaitu@ubuntu:~$ computeWeight

我是否应该更改可执行文件的任何权限才能获得此权限?

【问题讨论】:

    标签: linux gcc executable


    【解决方案1】:

    您需要添加“。”到你的路。不过,有些人认为这很危险。例如见http://www.arsc.edu/support/policy/dotinpath.html

    【讨论】:

      【解决方案2】:

      $PATH 变量定义了 linux 查找可执行文件的位置(尝试在终端中键入 echo $PATH)。您需要将该文件放在其中一个位置。一种方法是在您的主目录中添加一个 bin 文件夹,将可执行文件放在那里,然后将此行(将您的主文件夹中的 bin 目录添加到搜索路径)添加到您的 .cshrc 文件中,以便执行它对于每个外壳:

      set PATH = ($PATH $HOME/bin) 
      

      话虽如此,我认为键入 ./ 并没有那么糟糕。

      【讨论】:

      • 这比添加“.”更安全正如其他答案所暗示的那样,到一个人的 PATH ,而且更方便,因为即使您不在程序所在的目录中,它也可以工作。
      【解决方案3】:

      导出 PATH=$PATH:.

      【讨论】:

      • ...我们知道问题中使用的是什么外壳吗?
      • 在没有在问题或标签中指定 shell 的情况下,假设问题被标记为 linux,假设 bash 是一个安全的假设。
      • @people,有一个“@ubuntu”有问题。所以,默认情况下它会给用户 tha bash
      猜你喜欢
      • 1970-01-01
      • 2012-07-20
      • 1970-01-01
      • 2011-03-11
      • 1970-01-01
      • 1970-01-01
      • 2010-10-22
      • 1970-01-01
      • 2018-06-02
      相关资源
      最近更新 更多