Path 在';上拆分路径是否安全/';解析它?

Path 在';上拆分路径是否安全/';解析它?,path,posix,dirname,Path,Posix,Dirname,我正在尝试获取路径中的所有目录。例如,从a/b/c/d.e我想得到a,a/b,和a/b/c。我可以通过多次调用posixdirname等函数来实现这一点。问题在于像a/b/c/这样的路径。我想要a,a/b和a/b/c。由于在c之后有一个/,c应该是我想列出的目录。但是当输入a/b/c/时,像dirname这样的函数将返回a/b/c,而不是a/b/c 我可以在/上拆分以获得目录列表吗?或者是否存在这样做不起作用的边缘情况?我知道的唯一特殊情况是 以文件名结尾 末尾有一个/ 文件夹名为a.e(可能在

我正在尝试获取路径中的所有目录。例如,从
a/b/c/d.e
我想得到
a
a/b
,和
a/b/c
。我可以通过多次调用posix
dirname
等函数来实现这一点。问题在于像
a/b/c/
这样的路径。我想要
a
a/b
a/b/c
。由于在
c
之后有一个
/
c
应该是我想列出的目录。但是当输入
a/b/c/
时,像
dirname
这样的函数将返回
a/b/c
,而不是
a/b/c


我可以在
/
上拆分以获得目录列表吗?或者是否存在这样做不起作用的边缘情况?

我知道的唯一特殊情况是

  • 以文件名结尾
  • 末尾有一个
    /
  • 文件夹名为
    a.e
    (可能在末尾,也可能不在末尾)
  • 符号链接
  • Windows路径(正在使用
    \
    ,但我认为它不适用于您的情况)
  • 用户输入错误,放入多个
    /
    。e、 g.
    /tmp//something
    ,在某些程序中受支持
  • 如果您的功能支持上述所有情况,我认为这很好