簡體   English   中英

拆分目錄路徑powershell

[英]Split directory path powershell

我想使用 power shell 拆分目錄路徑。 我的完整路徑是 D:\\data\\path1\\path2\\abc.txt,我想將其拆分為 path2\\abc.txt。 有人可以讓我知道我該怎么做。

$last2parts = "D:\data\path1\path2\abc.txt".Split("\") | Select-Object -Last 2
$last2parts -join "\"

回復您對另一種解決方案的評論,試試這個。 只需刪除您的常量 d:\\data\\path1。 然后執行拆分

$last2parts = "D:\data\path1\path2\abc.txt".Replace("D:\data\path1","") 
$last2parts =$last2parts.Split("\") | Select-Object -Last 2
$last2parts -join "\"

或者,如果您想要 D:\\data\\path1 之后的所有內容,請嘗試此操作

$lastparts = "D:\data\path1\path2\abc.txt".Replace("D:\data\path1","") 
$lastparts =$lastparts.Split("\") 
$lastparts -join "\"
$PathAsString = "D:\data\path1\path2\abc.txt"

[System.IO.Path]::Combine($(Split-Path -leaf $(Split-Path $PathAsString)),$(Split-Path -leaf $PathAsString))

使用系統的分隔符而不是指定 Windows 的“\\”字符。 老實說,如果我知道這只會在 Windows 系統上運行,我會選擇@ChiliYago 的答案,因為您不能像在 Linux 中那樣將路徑分隔符放在文件或目錄名中。

對不起,超級遲到的帖子! 我想你可能已經解決了。 但這里有一些你可以嘗試的東西。

您也可以嘗試使用 substring() 函數。

$fullPath = "D:\data\path1\path2\abc.txt"
$rootPath = "D:\data\path1\"
$filePath = $fullPath.substring($rootPath.length, ($fullPath.length - $rootPath.length) )

像這樣的事情可能會幫助你。

在 Stack Overflow 上提問時,請發布一些您已經嘗試過的代碼以及您得到的結果。 我們幫助您編寫您已經嘗試過的代碼,我們不是來為您編寫代碼的(:

但是......我會從這里開始: 鏈接

這會讓你開始。 您還可以在控制台中執行以下操作以獲取有關命令Split-Path一些信息

Get-Help Split-Path -Example

在你自己把一些東西放在一起之后,你可以編輯你的帖子以包含你嘗試過的東西,然后你更有可能得到針對你的特定情況的准確回復。 祝你好運和良好的編碼!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM