无法从任何目录运行可执行文件


1

我有一个存储在目录中的可执行文件“x”。我想通过在终端的任何地方输入“x”来执行程序“x”。目前我必须在程序目录中输入“./x”来运行程序。我怎样才能解决这个问题?


我很确定我只需要设置一个环境变量来处理这个问题。我已经阅读了教程并且仍然感到困惑所以我想我会问这里。
Drew

此外,如果我有一个使用以下信息的示例,它会有所帮助。 path ='/ Desktop / cufflinks / x'executable filename ='x'
Drew

Answers:


3

在您的主目录中,您应该看到一个名为.profile的文件

打开此文件并对其进行编辑以添加以下内容

export PATH=$PATH:/full/path/to/executable/folder/

保存文件并重新启动终端窗口。

现在您已将包含自定义可执行文件的文件夹添加到您应该能够键入“x”的路径并运行该命令。

警告:更改路径时要小心。如果你打错了,你的系统将不会幸福


编辑:如果您的主目录中没有.profile文件,则bash通常按以下顺序查找配置文件信息

  1. 在〜/ .bash_profile
  2. 〜/ .bash_login文件
  3. 〜/ .profile文件

如果在主目录中你的意思是'/ home'(位于root的主目录),那么我找不到.profile。当我运行'textmate .profile'时,会出现一个空白文件(假设它创建了一个新文件)。我需要创建.profile吗?谢谢你的帮助!
Drew

是的,它可能是导出PATH = $ PATH:/ home / john / project / bin,例如,如果您的主目录中有一个名为project的文件夹,其bin文件夹中包含可执行文件。如果你没有.profile只是创建一个新的,如果不将它添加到/ etc / profile就应该被选中
gruntled

Drew发表评论:感谢为正确的语法/命令而烦恼。我通过将export PATH = $ PATH:/ full / path / to / executable / folder /添加到我的bashrc文件的最后一行(〜/ etc / bashrc)来解决我的问题。重启终端,一切正常!
Ivo Flipse

通常,unix系统上的@Drew主目录 /home/username/ 或捷径 ~/
crasic
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.