如何在 Bash 中获取文件路径参数中的最后一个目录名/文件名?
linuxoperating systemopen source更新于 2026/2/14 23:22:17
我们利用 Bash 文件来存储通常称为环境变量的不同变量。我们稍后可以通过 Linux 提供的 echo 实用程序命令轻松打印这些变量。
示例
打印 $PATH 环境变量。
命令
echo $PATH
输出
immukul@192 src % echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/Library/Apple/usr/bin:/Users ers/immukul/.cargo/bin
现在我们可以看到 PATH 环境变量由不同的目录组成,假设我们需要从路径变量中获取最后一个文件名。
在这种情况下,我们将使用Linux 提供的基本名称命令实用程序。
base name 命令用于删除目录路径并返回变量中最后一个文件名。
命令
basename $PATH
输出
bin
我们还可以使用一个小技巧来获取倒数第二个值,方法是将基本名称命令修改为类似 − 的形式。
sh-3.2# echo $(basename $(dirname $PATH))
上述命令将有助于获取 PATH 变量(一个目录)的倒数第二个名称。
输出
.cargo
同样,我们也可以打印第三个姓氏。
Command
sh-3.2# echo $(basename $(dirname $(dirname $PATH)))
输出
immukul
相关文章
有用资源
linux 参考教程 - 该教程包含有关 linux 的更多信息:https://www.cainiaomax.com/linux/

