📜  提取文件扩展名 bash (1)

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

提取文件扩展名 Bash

如果您正在编写 Bash 脚本或者在 Linux 终端操作文件时,可能需要提取文件的扩展名。在 Bash 中,您可以使用两种方法来提取文件扩展名。

方法一:使用字符串操作符

在 Bash 中,您可以使用字符串操作符 ## 来删除文件名中的路径和文件名(只留下扩展名)。以下是一个例子:

file_name="/path/to/file.txt"
extension="${file_name##*.}"
echo "File extension: $extension"

这会返回文件扩展名 txt

方法二:使用 basenameawk

在 Bash 中,您可以使用 basename 命令来删除文件路径和文件名之外的所有内容。然后,您可以使用 awk 命令来将最后一个句点之前的所有内容删除。

以下是一个例子:

file_name="/path/to/file.txt"
extension=$(basename "$file_name" | awk -F "." '{print $NF}')
echo "File extension: $extension"

这会返回文件扩展名 txt

总结

如果您需要提取文件的扩展名,Bash 提供了两种方法。您可以使用字符串操作符 ##,或者使用 basenameawk 命令。不管您选择哪种方法,它们都可以为您提供所需的结果。