一般来说,您在Linux系统上运行的大多数程序都能完美地工作,并且您的shell在执行时不会出现任何错误。但是,有时您可能希望从Linux系统上的非标准目录中快速运行自定义脚本或程序。
在这种情况下,您需要将它们的源目录添加到shell的PATH变量中,以便它知道在哪里可以找到它们。
PATH环境变量的用途是什么?
环境变量控制外壳的行为。例如,如果您在Linux上使用命令行,系统将依赖PATH变量来查找您输入的命令的位置。
PATH是Linux中的一个内置环境变量,它响应用户或应用程序发出的命令,告诉shell要搜索哪些目录以搜索可执行文件。
它包含用冒号分隔的目录列表,用于查找您输入的命令。
如何在Linux中将目录添加到PATH
要查看当前PATH中的内容,请在终端中键入以下内容:
回响
$PATH
代码语言:
PHP
(
php
)
如您所见,此变量中的目录用冒号分隔(
:
). 目前,shell在以下目录中搜索二进制可执行文件:
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
箱子
/usr/games
/usr/local/games
/快照/垃圾箱
/home/linuxiac/.dotnet/tools
搜索PATH的顺序也很重要。因此,如果在两个不同的目录中有两个共享相同名称的可执行文件,shell将在PATH中第一个目录中运行该文件。
将目录临时添加到PATH
现在假设您已经创建了一个自定义shell脚本,该脚本位于
/srv/脚本
目录,并且您希望将此目录添加到PATH变量中。以下是您应该做的事情:
出口
PATH=$PATH:
/srv/
脚本
代码语言:
JavaScript
(
javascript
)
为了使事情更加透明,让我们分解一下这个语法。首先,以下是每个参数的含义:
- 的
出口
命令将导出修改后的
路径
变量到shell子进程环境。
- 这个
$
在变量名之前,表示您正在引用其值。
- 这个
:/srv/scripts
部分指定后面的内容
:
符号应附加到当前PATH变量中包含的值。
让我们看看PATH现在是什么样子的:
回响
$PATH
代码语言:
PHP
(
php
)
正如您在上面的输出中所看到的
/srv/脚本
目录添加到PATH变量的末尾。现在,您存储在
/srv/脚本
目录可以在任何地方执行,而无需指定其完整路径。
此外,如果您认为应该先搜索目录,然后再搜索其他内容,则可以将其添加到
$PATH
.
出口
路径=
/srv/
脚本:$PATH
代码语言:
JavaScript
(
javascript
)
需要注意的是,如果您退出终端或从系统中注销,PATH将恢复。更改将丢失,因为这种设置PATH的方法只会在当前终端会话期间临时记住更改。
要使其永久化,请查看下面的部分。
将目录永久添加到PATH
要使更改永久化,您需要在shell配置文件中定义PATH变量。
默认的系统范围PATH值在中指定
/etc/配置文件
文件。将目录添加到单个用户的路径的最佳位置是修改该用户的
.bashrc
文件
用文本编辑器打开文件,滚动到文件底部,并在文件末尾添加以下行:
vim~/.bashrc
出口
PATH=$PATH:
/srv/
脚本
代码语言:
JavaScript
(
javascript
)
最后,保存文件并使用
来源
命令
源~/.bashrc
要确认已成功添加目录,请键入以下内容
回响
命令检查路径:
回响
$PATH
代码语言:
PHP
(
php
)
结论
正如您所看到的,在Linux中向用户或全局PATH变量添加新目录非常简单。然而,在这篇文章中,我们了解到有两种方法:暂时和永久。
如果你还有疑问,请在评论中告诉我。
在首次引入 Windows 大约 41 年后,记事本终于更新了自动更正和拼写检查功能。这家科技巨头于今年 3 月推出了拼...
大鱼 2024 年 7 月 9 日
在Ubuntu及其他基于Debian的Linux发行版中,软件包管理是系统维护的一个重要方面。apt和apt-get是两...
大鱼 2024 年 6 月 26 日
远程桌面是一种允许您远程接管和使用另一台计算机的服务。在Ubuntu中,可以在图形客户端机器上启用它来控制主机。此功能对...
大鱼 2024 年 5 月 7 日
利用当天的视频 苹果2024年5月的“放开”活动标志着iPad系列的一个重要里程碑,该公司推出了自成立以来最重大的升级。...
大鱼 2024 年 5 月 19 日
已升级到新iPhone,是否要从旧设备中移动所有照片?或者你只是想从别人的iPhone上转移照片?以下是在两部iPhon...
大鱼 2024 年 5 月 19 日