📅  最后修改于: 2023-12-03 15:13:38.061000             🧑  作者: Mango
在开发中,我们经常需要获取一个目录中所有文件的扩展名类型。这可以帮助我们做一些文件处理的操作,比如提取所有图片文件、统计文件类型等等。在 Bash 中,这可以通过几行简单的代码轻松实现。
我们可以使用 for 循环遍历目录中的所有文件,然后使用 ${file##*.} 来获取文件的扩展名。具体实现如下:
#!/bin/bash
directory="/path/to/directory"
for file in "$directory"/*
do
if [[ -f "$file" ]]; then
extension="${file##*.}"
echo "$extension"
fi
done
这段代码会输出目录中所有文件的扩展名,如果你只需要特定类型的文件,可以在 if 语句中加入对文件类型的判断条件,比如:
if [[ -f "$file" && ${file: -4} == ".jpg" ]]; then
这段代码只会输出 jpg 格式的文件扩展名。
# Bash 获取目录中的文件扩展名类型
在开发中,我们经常需要获取一个目录中所有文件的扩展名类型。这可以帮助我们做一些文件处理的操作,比如提取所有图片文件、统计文件类型等等。在 Bash 中,这可以通过几行简单的代码轻松实现。
## 代码实现
我们可以使用 for 循环遍历目录中的所有文件,然后使用 ${file##*.} 来获取文件的扩展名。具体实现如下:
```bash
#!/bin/bash
directory="/path/to/directory"
for file in "$directory"/*
do
if [[ -f "$file" ]]; then
extension="${file##*.}"
echo "$extension"
fi
done
这段代码会输出目录中所有文件的扩展名,如果你只需要特定类型的文件,可以在 if 语句中加入对文件类型的判断条件,比如:
if [[ -f "$file" && ${file: -4} == ".jpg" ]]; then
这段代码只会输出 jpg 格式的文件扩展名。