Bash CentOS中的路径定义在哪里?

Bash CentOS中的路径定义在哪里?,bash,centos,centos7,Bash,Centos,Centos7,我开始查看以下文件: /等/简介 ~/.bash\u配置文件 等等 以定位环境变量的定义位置。不幸的是,我找不到$PATH变量。我正在使用Bash。初始的路径环境变量是从。。。不管是什么发射了炮弹。例如,sudo,sshd,在桌面登录后创建的命令 在初始路径未继承的情况下,似乎还有一个路径硬连接到bash二进制文件中。(查看strings/bin/bash的输出) 然后,各种shell初始化脚本开始设置或更新路径。例如,在Ubuntu上,PATH变量由/etc/profile.d/apps

我开始查看以下文件:

  • /等/简介
  • ~/.bash\u配置文件
  • 等等

以定位环境变量的定义位置。不幸的是,我找不到$PATH变量。我正在使用Bash。

初始的
路径
环境变量是从。。。不管是什么发射了炮弹。例如,
sudo
sshd
,在桌面登录后创建的命令

在初始
路径
未继承的情况下,似乎还有一个
路径
硬连接到
bash
二进制文件中。(查看
strings/bin/bash
的输出)

然后,各种shell初始化脚本开始设置或更新
路径
。例如,在Ubuntu上,
PATH
变量由
/etc/profile.d/apps bin PATH.sh
更新。。。它由
/etc/profile
运行,您不必担心(甚至不必询问)路径设置在哪里,因为您不应该信任随机发行版以正确的顺序放置正确的目录

相反,您可以在shell的配置文件中设置所需的
路径。就这样

作为起点,POSIX要求
getconf PATH
返回系统的默认
PATH
。如果您有一个
$HOME/bin
,并且有一个
/usr/local/bin
,那么您可以添加它们。 这是我的机器上的外观:

PATH="$(/usr/bin/getconf PATH)"
PATH="$PATH:/usr/sbin"
PATH="$PATH:/usr/local/bin"
PATH="$PATH:$HOME/bin"

通过这种设置,很容易调整顺序。也许你不喜欢
/usr/bin/vi
中的古代vim?自己编译并将
/usr/local/bin
移到前面。

堆栈溢出用于编程问题。你可以试着问一下,或者改为问。