如何在 Linux 中添加目录到 PATH

2023-10-24

当您在命令行上键入命令时,您基本上是在告诉 shell 运行具有给定名称的可执行文件。在Linux中,这些可执行程序就像ls , find , file和其他文件,通常位于系统上的几个不同目录中。存储在这些目录中的任何具有可执行权限的文件都可以从任何位置运行。保存可执行程序的最常见目录是/bin, /sbin, /usr/sbin, /usr/local/bin and /usr/local/sbin.

但是 shell 如何知道在哪些目录中搜索可执行程序呢? shell 是否搜索整个文件系统?

答案很简单。当您键入命令时,shell 会搜索用户中指定的所有目录$PATH该名称的可执行文件的变量。

本文展示了如何将目录添加到您的$PATH在Linux系统中。

What is $PATH在Linux中#

The $PATH 环境变量是一个以冒号分隔的目录列表,告诉 shell 在哪些目录中搜索可执行文件。

检查您的目录中有哪些目录$PATH,您可以使用printenv or echo命令:

echo $PATH

输出将如下所示:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

如果两个可执行文件共享相同的名称,位于两个不同的目录中,则 shell 将运行该目录中第一个目录中的文件。$PATH.

将目录添加到您的$PATH #

在某些情况下,您可能希望将其他目录添加到$PATH多变的。例如,某些程序可能安装在不同的位置,或者您可能希望为您的个人脚本提供一个专用目录,但无需指定可执行文件的绝对路径即可运行它们。为此,您只需将该目录添加到您的$PATH.

假设您有一个名为bin位于保存 shell 脚本的主目录中。将该目录添加到您的$PATH输入:

export PATH="$HOME/bin:$PATH"

The export命令会将修改后的变量导出到 shell 子进程环境。

现在,您可以通过键入可执行脚本名称来运行脚本,而无需指定文件的完整路径。

但是,此更改只是暂时的,并且仅在当前 shell 会话中有效。

要使更改永久生效,您需要定义$PATHshell 配置文件中的变量。在大多数 Linux 发行版中,当您启动新会话时,将从以下文件中读取环境变量:

  • 全局 shell 特定配置文件,例如/etc/environment and /etc/profile。如果您希望将新目录添加到所有系统用户,请使用此文件$PATH.

  • 每个用户 shell 特定的配置文件。例如,如果您使用的是 Bash,则可以设置$PATH变量在~/.bashrc文件。如果您使用的是 Zsh,则文件名为~/.zshrc.

在此示例中,我们将在~/.bashrc文件。使用您的打开文件文本编辑器并在其末尾添加以下行:

nano ~/.bashrc
~/.bashrc
export PATH="$HOME/bin:$PATH"

保存文件并加载新文件$PATH使用以下命令进入当前 shell 会话source命令:

source ~/.bashrc

要确认目录已成功添加,请打印您的值$PATH通过输入:

echo $PATH

结论#

向您的用户或全局添加新目录$PATH变量非常简单。这允许您执行存储在非标准位置的命令和脚本,而无需键入可执行文件的完整路径。

相同的说明适用于任何 Linux 发行版,包括 Ubuntu、CentOS、RHEL、Debian 和 Linux Mint。

如果您有任何疑问,请随时发表评论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Linux 中添加目录到 PATH 的相关文章

随机推荐

  • 如何编写实用的 shell 脚本

    在上一篇文章中 我们谈到了常用表达 我们看到了如何在 sed 和 awk 中使用它们进行文本处理 我们之前讨论过Linux sed命令和awk 命令 在这个系列中 我们编写了一些小的 shell 脚本 但我们没有把事情搞混 我认为我们应该更
  • Windows Server 事件日志备份脚本

    作为系统管理员 我们有责任备份并定期保存 Windows 服务器事件日志 另外 请将它们存储在外部驱动器或云存储上 我们建议每天备份事件日志并保留至少一年的备份 事件日志帮助我们对系统进行故障排除 这是一个批处理脚本 用于进行 Window
  • 出于安全原因,默认情况下禁用异常打印。错误日志记录号:xxxxxx

    安装 magento 时 如果您遇到如下问题 这是已知问题 Error Exception printing is disabled by default for security reasons Error log record numb
  • 如何在 Ubuntu 和 Linux Mint 上安装最新内核

    Ubuntu 和 Linux Mint 是两个流行的 Linux 发行版 被个人和组织广泛使用 使用 Linux 的好处之一是能够升级到最新的内核版本 在本文中 我们将指导您完成在 Ubuntu 和 Linux Mint 上安装最新内核的步
  • 如何在 PHP 中读取 XML 文件 (SimpleXML)

    SimpleXML 是 PHP 5 中引入的 PHP 扩展 它允许用户在 PHP 中轻松处理 XML 数据 SimpleXML 将任何 XML 数据转换为可以使用普通属性选择器和数组迭代器轻松处理的对象 您必须已安装php simplexm
  • 如何在 Ubuntu 22.04 上安装 MariaDB

    MariaDB是一个流行的开源关系数据库系统 由MySQL服务器的原始开发人员开发 它最初是从 MySQL 服务器分叉出来的 并进行了多项增强 本教程将指导您在 Ubuntu 22 04 Linux 系统上安装 MariaDB 服务器 1
  • 如何使用 JavaScript 替换字符串中的所有点 (.)

    JavaScript 提供了多种操作字符串的方法 当涉及到替换字符串中的字符时 String prototype replace 立即想到方法 但是 当使用替换方法并以简单字符串作为搜索值时 它只会替换第一个出现的位置 替换所有出现的字符
  • 如何在 Debian 11/10 上安装和使用 Cordova

    阿帕奇科尔多瓦是一个开源移动开发框架 它允许您使用 HTML5 CSS3 和 JavaScript 等标准 Web 技术进行跨平台开发 避免使用每个移动平台的本机开发语言 Apache Cordova 命令行需要 Node js 才能运行
  • 如何在 Ubuntu 16.04 LTS 上安装 Swift

    Swift 是一种安全 快速 富有表现力的通用编程语言 专为软件设计模式而构建 它最适合系统编程 移动和桌面应用程序 Swift 提供了大量功能 使编程变得更加容易 同时为开发人员提供了真正的系统编程语言所需的控制能力 本教程将帮助您在 U
  • 如何在 Fedora Linux 上安装 Git

    Git 是一个分布式版本控制系统 广泛应用于软件开发和其他协作项目 在本指南中 我们将介绍在 Fedora Linux 上安装 Git 的两种方法 使用官方存储库和从最新源代码编译 先决条件 确保您有一个运行 Fedora Linux 的系
  • 如何在 Python 中计算两个日期之间的天数

    在 Python 中处理日期和时间时 计算两个日期之间的天数是一项常见任务 无论您是构建预订系统 日程安排工具还是任何其他涉及日期和时间的应用程序 计算两个日期之间的天数都是一个关键功能 在本文中 我们将讨论如何在 Python 中计算两个
  • 什么是中间人 (MITM) 攻击?

    A 中间人 MITM 攻击是一种常见的网络安全威胁 如果处理不当 可能会造成严重后果 在这种类型的攻击中 恶意行为者会拦截 中继并可能改变认为彼此直接通信的两方之间的通信 本文将深入探讨 MITM 攻击带来的威胁 攻击者使用的技术以及个人和
  • 如何利用技术进步实现完美的远程办公

    远程工作并不是一个新趋势 作家 记者和艺术家总是有机会在舒适的家中工作 尽管如此 远程办公始终与技术密切相关 在过去 远程工作人员依赖邮件服务和交通 随着这两个领域变得越来越好 越来越多的人能够在家执行工作任务 然而 直到互联网的出现 这种
  • 如何在 Debian 9 上设置 Apache 虚拟主机

    在本教程中 我们将引导您了解如何在 Debian 9 上设置 Apache 虚拟主机 Apache 虚拟主机允许您在一台计算机上托管多个域 使用虚拟主机时 您可以为每个域或子域指定不同的文档根 包含网站文件的目录 创建单独的安全策略 使用不
  • 如何在 CentOS 8 上安装 R

    R 是一种开源编程语言和免费环境 专门从事统计计算和图形表示 它由 R 统计计算基金会支持 主要供统计学家和数据挖掘人员用于开发统计软件和执行数据分析 本文介绍如何在 CentOS 8 上安装 R 先决条件 在继续本教程之前 请确保您已满足
  • 如何更改 SFTP 端口

    SFTP SSH 文件传输协议 是一种安全文件协议 用于通过加密连接在两台主机之间传输文件 它还允许您对远程文件执行各种文件操作并恢复文件传输 SFTP 可用作旧版 FTP 协议的替代品 它具有 FTP 的所有功能 但连接更安全 本文介绍如
  • 如何在 Ubuntu 18.04 上设置或更改时区

    在 Ubuntu 上 系统的时区是在安装过程中设置的 但以后可以轻松更改 使用正确的时区对于许多与系统相关的任务和流程都很重要 例如 cron 守护进程使用系统的时区来执行 cron 作业 并且日志文件中的时间戳基于相同的时区 本教程演示如
  • 如何在 Debian 9 上安装 Yarn

    Yarn 是一个与 npm 兼容的 JavaScript 包管理器 它的创建是为了解决 npm 的一系列问题 例如通过并行操作加快软件包安装过程并减少与网络连接相关的错误 在本教程中 我们将指导您如何安装Yarn在 Debian 9 系统上
  • 如何在 Ubuntu 18.04 上安装 Django

    Django 是一个免费开源的高级 Python Web 框架 旨在帮助开发人员构建安全 可扩展和可维护的 Web 应用程序 有不同的方法来安装 Django 具体取决于您的需要 它可以在系统范围内安装 也可以使用 pip 安装在 Pyth
  • 如何在 Linux 中添加目录到 PATH

    当您在命令行上键入命令时 您基本上是在告诉 shell 运行具有给定名称的可执行文件 在Linux中 这些可执行程序就像ls find file和其他文件 通常位于系统上的几个不同目录中 存储在这些目录中的任何具有可执行权限的文件都可以从任