如何删除文件路径的首个层级以获取后续子路径
移除路径首段目录的实现方案
以下是不同开发环境下的常用实现方式:
Bash/Shell 环境
- 调用
cut命令实现(写法直观):
# 示例路径 target_path="folder1/folder2/folder3" # 按/分割,输出第2个及之后的所有字段 echo "$target_path" | cut -d'/' -f2-
输出结果为folder2/folder3。其中-d'/'指定分隔符为斜杠,-f2-表示提取从第2段开始的所有内容。
- 用原生参数扩展实现(无外部命令调用,性能更高):
target_path="folder1/folder2/folder3" # 匹配并删除开头到第一个/为止的内容 echo "${target_path#*/}"
Python 环境
推荐用标准库pathlib实现,跨平台兼容性好:
from pathlib import Path p = Path("folder1/folder2/folder3") # 跳过第一段目录,拼接剩余部分 result = Path(*p.parts[1:]) # 如需字符串格式,调用str(result)即可
如果使用os模块实现:
import os target_path = "folder1/folder2/folder3" # 最多分割1次,直接获取剩余路径 _, rest_path = target_path.split(os.sep, 1)
Node.js 环境
const path = require('path'); const targetPath = 'folder1/folder2/folder3'; const pathParts = targetPath.split(path.sep); const result = pathParts.slice(1).join(path.sep);
注意:如果处理的是绝对路径(开头带
/),路径分割后的第一段会是空字符串,可根据需求调整切片的起始下标。
内容的提问来源于stack exchange,提问作者YoavKlein
相关产品推荐
相关产品推荐

