以下是一个示例的BASH脚本编程解决方法,用于将嵌套循环的输出整理成表格。
#!/bin/bash
# 定义表头
echo -e "Name\tSize\tType"
# 嵌套循环遍历文件夹
for dir in /path/to/directory/*; do
# 检查是否是文件夹
if [ -d "$dir" ]; then
dir_name=$(basename "$dir")
# 遍历文件夹中的文件
for file in "$dir"/*; do
if [ -f "$file" ]; then
file_name=$(basename "$file")
file_size=$(du -sh "$file" | awk '{print $1}')
file_type=$(file -b "$file")
# 输出表格行
echo -e "$dir_name\t$file_name\t$file_size\t$file_type"
fi
done
fi
done
在上面的代码中,我们首先定义了表头,它包含了表格的列名。然后,通过嵌套循环遍历指定文件夹中的文件和子文件夹。我们使用basename
命令获取文件和文件夹的名称,并使用du
命令获取文件大小,file
命令获取文件类型。最后,我们使用echo -e
命令将每一行的数据输出为表格形式。