linux中export PATH是什么意思?

linux中export PATH是什么意思?,第1张

题主你好,

export PATH是用来给环境变量PATH赋值的, 而PATH理论上来说存放的是由冒号分隔的一系列路径:

而PATH这个变量的作用通常是提供搜索路径, 这么说不直观, 举个例子来说吧:

我们可以在命令行中直接使用find命令进行文件的查找, 但你有没有想过, 为啥你可以直接使用find命令呢?

原因一, 肯定find这个可执行文件要存在于linux中

原因二, 我们还要将find可执行文件的路径添加到PATH中

也就是说我们每次在黑乎乎的命令行中输入命令时, 它都会去PATH中指定的一系列路径下去找, 如果找到就按步就班的执行, 如果没找到就会报错.

-----

举个更现实一点的例子, 比如说我自己写了一个脚本名叫hi,内容为:

我是直接在家目录下新建的这个脚本,

此时我执行"hi friend",看看有什么情况发生:

它会告诉你,hi这个命令没找到,原因是PATH这个环境变量里的路径,不包含我的家目录,因此它找不到.

下面我们将家目录放到PATH中,再执行一遍命令看一下:

可以看到,正确输出了结果.

-----

希望可以帮到题主, 欢迎追问.

/etc/profile和/etc/bashrc都是系统级别的,修改后可以在所有用户中起作用; /.bash_profile、 /.bashrc和~/.bash_logout都是用户级别的,修改后只会作用于当前用户。

带profile的文件都是需要重新进入用户时才会生效,带bashrc的则是打开新的shell时生效;

执行顺序:/etc/profile ->(~/.bash_profile | ~/.bash_login | ~/.profile) ->~/.bashrc ->/etc/bashrc ->~/.bash_logout

$ echo $HOME

$ export HELLO="Hello"

$ env

¥ set

readonly TEST

之前介绍的使用 export 命令设置环境变量是在命令行中直接执行,这样设置的环境变量在退出shell时就会失效。要想设置永久有效的环境变量就需要修改之前提到的文件。

PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

你可以自己加上指定的路径,中间用冒号隔开

需要注意的是,最好不要把当前路径”./”放到PATH里,这样可能会受到意想不到的攻击。

特点:所有用户;永久有效;生效需要重新进入用户

root权限:

要想修改完文件后就立即生效,可以在命令行中执行:

# source /etc/profile

Source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7280834.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存