47

ファイルのパス名の最後の部分だけを取得する必要があります。

例:

c:\dir1\dir2\dir3\file.txt

dir3変数に入る必要があります。

を試してみSplit-Pathましたが、パス全体が表示されます。

4

5 に答える 5

71

これには、Split-PathAFAICT の 2 つの呼び出しが必要です。

PS> Split-Path (Split-Path c:\dir1\dir2\dir3\file.txt -Parent) -Leaf
dir3
于 2012-04-25T14:58:43.867 に答える
5

シンプルに保ち、パスが通常の形式になる場合は、次を使用できますString.Split()

"c:\dir1\dir2\dir3\file.txt".split("\")[-2]
于 2012-04-25T15:56:15.280 に答える
4

System.Uri を使用した別のオプション:

PS> ([uri]"c:\dir1\dir2\dir3\file.txt").segments[-2].trim('/')
dir3

ファイルがディスク上に存在する場合:

PS> (dir c:\dir1\dir2\dir3\file.txt).directory.name
于 2012-04-25T16:34:02.177 に答える
3

一般に、現在のディレクトリの名前が必要な場合は、これを使用しました (元のアイデアについては Shay Levi に感謝します)。

PS> (dir).directory.name[0]

于 2016-12-30T07:53:16.870 に答える