OS X,在bash中为编译的程序添加命令

21 浏览
0 Comments

OS X,在bash中为编译的程序添加命令

我在如何在OSX上永久设置环境变量的问题上阅读了几个答案。

首先,我尝试了这个链接:如何在Linux/Unix上永久设置$PATH,但是我收到了一个错误消息,提示“没有该文件和目录”,所以我尝试了~/.bash_profile而不是~/.profile,但是没有成功。

其次,我找到了这个解决方案:如何设置应用程序在OS X中使用的$PATH,建议在

~/.MacOSX/environment.plist

中进行更改,但是我再次遇到了“没有该文件和目录”的错误。

我需要一种方法来设置这些变量,以便每次打开一个新的终端会话时不需要再次设置它们。

0
0 Comments

在macOS中,有一些文件可能会影响到$PATH变量,如下所示:

  1. 正如最高票答案所说,可以使用vi /etc/paths命令来编辑这个文件,这是我认为比较推荐的方法。
  2. 还有一个/etc/paths.d目录,其中包含的文件可能会影响到$PATH变量,在我的情况下,设置了gitmono-command的路径。可以使用ls -l /etc/paths.d命令列出项目,使用rm /etc/paths.d/path_you_dislike命令删除项目。
  3. 如果你正在使用"bash"环境(例如默认的Terminal.app),应该检查~/.bash_profile~/.bashrc文件。这两个文件对$PATH变量有影响。
  4. 如果你正在使用"zsh"环境(例如Oh-My-Zsh),应该检查~./zshrc文件,而不是~/.bash*

不要忘记重新启动所有的终端窗口,然后执行echo $PATH命令。$PATH字符串将会是PATH_SET_IN_3&4:PATH_SET_IN_1:PATH_SET_IN_2

注意到前两种方式(/etc/paths/etc/paths.d)位于根目录/,会影响到计算机中的所有账户,而后两种方式(~/.bash*~/.zsh*)位于用户目录~/(也就是/Users/你的用户名/),只会影响到你的账户设置。

更多信息请参阅:Mac OS X: Set / Change $PATH Variable - nixCraft

在某些情况下,我非常喜欢编辑.bash_profile文件,因为这样如果你的机器上有两个用户账户,你可以为其中一个添加脚本,比如在~/dev/scripts目录下。

我之前没有意识到我使用的是zsh而不是bash。谢谢!

以防万一,最好在确保没有任何问题之前不要"重新启动[所有]终端窗口"。你可能会观察到一些奇怪的新行为,而保留一个使用旧环境的终端窗口可以帮助找出问题所在。

0
0 Comments

在Mac OS X上,将编译的程序添加到bash命令中的原因是因为该程序未被包含在系统的默认路径中。为了解决这个问题,可以通过以下步骤将其添加到bash命令中。

1. 打开终端。

2. 在终端中,输入以下命令来打开/etc/paths文件:

sudo nano /etc/paths

输入管理员密码以确认权限。

3. 在打开的文件中,将编译的程序的路径添加到一个新行中。例如,如果编译的程序的路径是/usr/local/bin,那么添加以下内容:

/usr/local/bin

4. 按下Ctrl + X键,然后按Y键保存更改。

5. 关闭终端并重新打开一个新的终端窗口。

6. 在新的终端窗口中,输入以下命令来检查是否成功将编译的程序添加到bash命令中:

echo $PATH

如果程序的路径被包含在输出中,则说明已成功添加。

这个方法适用于Mac OS X Mountain Lion,El Capitan和Catalina等版本。相比修改.bash_profile和.profile文件,将程序路径添加到/etc/paths文件是更好的解决方法。不需要重启终端,只需关闭并重新打开一个新的终端窗口即可生效。

参考链接:

http://architectryan.com/2012/10/02/add-to-the-path-on-mac-os-x-mountain-lion/#.Uydjga1dXDg

0
0 Comments

在MacOS中,要将新路径添加到PATH环境变量中,只需在/etc/paths.d目录下创建一个新文件,并在文件中写入要设置的路径。重新启动终端。您可以在提示符下使用echo $PATH进行检查,以确认路径是否已添加到环境变量中。

例如:要将新路径/usr/local/sbin添加到PATH变量中:

cd /etc/paths.d
sudo vi newfile

newfile中添加路径并保存。

重新启动终端,输入echo $PATH进行确认。

我不确定为什么这个答案被投票为负。这似乎是一种合理且明智的组织路径变量的方式。我已经使用paths.d为每个非标准路径变量创建了单独的文件。

如何保存文件?按哪个键?

要在终端中保存,请参考- cyberciti.biz/faq/linux-unix-vim-save-and-quit-command

是的,要保存文件并退出,我只需使用Esc,然后输入:wqEnter

0