系统如何知道在哪些路径上搜索可执行文件?

系统如何知道在哪些路径上搜索可执行文件?

我知道有诸如、、等目录,/bin并且这些目录中的文件可以直接从终端运行。终端如何知道要查看这些路径?/sbin/usr/bin/usr/local/bin

我听说路径存储在/etc/bash.bashrc或中~/.bashrc,但/sbin这些文件中不存在。是否有一个特定的文件来设置路径,除了使用 bashrc 之外,我们还可以添加自己的路径吗?

答案1

/etc/environment包含有关该程序路径的所有数据,您可以在那里添加新路径。

登录shell后,、、和/etc/environment/etc/bash.bashrc包含的路径会自动初始化。~/.bashrc~/.profile

答案2

是的 PATH 变量。您可以按照如下方式创建自己的 bin 目录: mkdir $HOME/bin 使用 bash shell export 命令将 $HOME/bin 添加到 PATH 变量中: export PATH=$PATH:$HOME/bin echo $PATH 使用 mv 命令将 hello.sh 移动到 $HOME/bin 中,运行: mv hello.sh $HOME/bin 在任意路径执行脚本: hello.sh

答案3

可执行脚本和文件的路径位于 PATH 环境变量中:

env | grep PATH

相关内容