2017-05-05 18 views
0

"Data"という名前のボリュームを持つローカルドライブにファイルをコピーしようとしていますが、コピーのドライブ文字を解析する方法がわかりません。powershellの出力ファイルをコピーしてファイルをコピーする方法は?

これは私がボリュームをつかむために使用していますラインです:

$drive=Get-WmiObject -class Win32_logicaldisk | 
    Where-Object {$_.VolumeName -eq "Data"} | 
    select DeviceID 

は、その後、私は$drive

DeviceId 
-------- 
D: 

答えて

2

を示して、それが失敗したところ、これがある(c:\tempから$drive/backupfolderにXCOPYをしたいです$driveは文字列ではありませんが、文字列のプロパティDeviceIdのオブジェクトです。プロパティを展開するか、またはプロパティを展開することもできます。

$drive = Get-WmiObject -Class Win32_logicaldisk | 
    Where-Object {$_.VolumeName -eq "Data"} | 
    Select-Object -ExpandProperty DeviceID 

またはプロパティをこのように展開します。

$drive = (Get-WmiObject -Class Win32_logicaldisk | Where-Object {$_.VolumeName -eq "Data"}).DeviceID 

または変数のプロパティを参照する:

"$($drive.DeviceID)\backupfolder" 
+0

は、迅速な返事をどうもありがとうございますと答えます! – kahoots

+0

これらのプロパティを見つける最も良い方法は、この例で 'Get-Member'にパイプすることです。' $ drive | Get-Member'を開き、 'MemberType'の下で利用可能な項目を見てください – user4317867

関連する問題