2017-08-29 4 views
-1

パワーシェルを使用してディレクトリパスを分割したい。私のフルパスはD:\ data \ path1 \ path2 \ abc.txtで、path2 \ abc.txtに分割します。 誰かに教えてもらえますか?分割ディレクトリパスpowershell

答えて

1

ここでスタックオーバーフローが発生する質問をするときに、既に試したコードと取得した結果を投稿してください。私たちは(私たちはあなたのためにそれを書くためにここにはありません、あなたはすでに試したコードをお手伝い:

しかし...私はここに開始する:Link

あなたが始められるでしょう、あなたがすることもできます。自分で一緒に何かを入れた後Split-Path

Get-Help Split-Path -Example 

、あなたが試したものを含めるように自分の投稿を編集することができ、コマンドのいくつかの情報を取得するには、コンソールで次の操作を行い、その後、あなたは、より可能性が高くなりますあなたの特定の状況のた​​めの正確な応答を得る。幸運と良いコーディング!

0
$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の後にすべてのものをしたい場合は、おそらくこの試みる分割を行います\データ\のパス1

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

ありがとうChiliYago。それは助ける:) –

+0

親切に私の答えはあなたのために解決としてマークしてください。喜んでそれは助けた – ChiliYago

0
$PathAsString = "D:\data\path1\path2\abc.txt" 

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

ではなく、Windowsの\ '文字を指定するよりも、システムの区切り文字を使用します。 正直なところ、これがWindowsシステム上でしか実行されないことが分かっていた場合、Linuxで可能なように、ファイル区切り文字をディレクトリやディレクトリ名に入れることができないので、@ ChiliYagoの答えに行きます。

+0

おかげでみんなと正しい質問を最初の試みを求めていないためにお詫び申し上げます。 "D:¥data¥path1"の部分が一定のままで、2番目の部分が以下のように変更されるようなファイルパスが複数あります。D:\ data \ path1 \ path2 \ a.txt D:\ data \ path1 \ path3 \ path4 \ b.txt 最初の部分を削除して2番目の部分を出力する方法を見つける。私は$ last2parts = "D:¥data¥path1¥path2¥abc.txt"を試しました。.Split( "\")| Select-Object -Last 2しかし、このシナリオでは役に立たない。 –

関連する問題