直接在命令行中打印当前目录的树形结构,如下所示:
#!/bin/bash
print_tree() {
local dir="$1"
local indent="${2:-}"
# 打印当前目录名
echo "${indent}$(basename "$dir")/"
# 获取当前目录下的所有文件和子目录
local items=("$dir"/*)
# 遍历所有项目
for item in "${items[@]}"; do
# 检查是否为目录
if [ -d "$item" ]; then
# 打印目录的短横线
echo "${indent}├─"
# 递归打印子目录
print_tree "$item" "${indent}│ "
else
# 打印文件的短横线
echo "${indent}├─$(basename "$item")"
fi
done
}
# 打印根目录
echo "项目目录结构:"
print_tree .
这段脚本在打印目录结构的同时,在每个目录或文件前添加了短横线,并使用了类似于树形结构的符号(如├─
)作为分隔。复制粘贴到终端中执行即可看到效果。