You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bash中将斜杠分隔的路径字符串逐层写入文件

实现思路
  • 先对输入路径做格式化:移除首尾的/字符,避免空元素干扰分割结果
  • 按/分割路径得到各级目录名的列表
  • 遍历目录名列表,逐层拼接前缀/和前面的目录段,生成每一层的完整路径
  • 将所有生成的路径逐行写入目标文件
代码实现

Python 版本

# 配置参数
input_path = "/sd1/sd2/sd3/"
output_path = "hierarchy_paths.txt"

# 路径处理逻辑
dir_parts = input_path.strip("/").split("/")
hierarchy = []
current_path = ""
for part in dir_parts:
    current_path += f"/{part}"
    hierarchy.append(current_path)

# 写入文件
with open(output_path, "w", encoding="utf-8") as f:
    f.write("\n".join(hierarchy))

边界兼容:如果输入是根路径/,dir_parts会是空列表,可自行添加判断是否要额外写入/到文件。

Bash 版本

#!/bin/bash
INPUT_PATH="/sd1/sd2/sd3/sd4/sd5/"
OUTPUT_FILE="hierarchy_paths.txt"

# 移除首尾斜杠
trimmed_path="${INPUT_PATH#/}"
trimmed_path="${trimmed_path%/}"

# 分割为数组
IFS='/' read -ra DIR_PARTS <<< "$trimmed_path"

# 清空输出文件后逐层写入
> "$OUTPUT_FILE"
CURRENT=""
for PART in "${DIR_PARTS[@]}"; do
    CURRENT+="/$PART"
    echo "$CURRENT" >> "$OUTPUT_FILE"
done

内容的提问来源于stack exchange,提问作者user16740005

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 08:15:02