📜  Linux 中的 basename 命令和示例(1)

📅  最后修改于: 2023-12-03 15:32:40.903000             🧑  作者: Mango

Linux 中的 basename 命令和示例

在 Linux 操作系统中,basename 命令常用于获取路径字符串中的最后一部分(即文件名或目录名),并输出该部分字符串。

命令格式
basename [OPTION] NAME...
命令参数

-a, --multiple:输出 NAME 中所有文件名或目录名的基本名称。

-s, --suffix=SUFFIX:从文件名或目录名中删除指定的后缀 SUFFIX。

-z, --zero:在输出中使用 null 字符(\0)而不是换行符分隔文件名或目录名。

命令示例
示例 1:获取文件名

假设我们有一个文件路径为 /home/user/file.txt,我们可以使用以下命令获取该文件的文件名:

$ basename /home/user/file.txt
file.txt
示例 2:获取目录名

假设我们有一个目录路径为 /home/user/documents/,我们可以使用以下命令获取该目录的目录名:

$ basename /home/user/documents/
documents
示例 3:处理多个文件或目录名

假设我们有以下两个文件路径:

/home/user/file1.txt
/home/user/file2.txt

我们可以使用以下命令获取这两个文件的文件名:

$ basename /home/user/file1.txt /home/user/file2.txt
file1.txt
file2.txt
示例 4:删除文件名后缀

假设我们有一个文件路径为 /home/user/file.txt,我们可以使用以下命令删除文件名中的 .txt 后缀:

$ basename /home/user/file.txt .txt
file
示例 5:处理 null 分隔的文件名或目录名

假设我们有以下两个文件路径:

/home/user/file1.txt
/home/user/file2.txt

我们可以使用以下命令使用 null 字符分隔这两个文件的文件名:

$ basename -z /home/user/file1.txt /home/user/file2.txt
file1.txtfile2.txt

以上是 basename 命令的常见用法和一些示例。此命令非常适用于在 Shell 脚本中获取文件名或目录名,并进行后续处理。