我想從具有變量驅動器名稱的驅動器調用exe文件。 代碼首先在系統的每個驅動器中搜索路徑,一旦發現它進入If條件,我想調用一個命令-bpimagelist。在調用exe文件時獲取Powershell腳本錯誤
下面是代碼,它給出了一個不尋常的錯誤。
for($pat=67 ;$pat -le 87 ;$pat++)
{
$y = [char]$pat;
$path = $y+":\Veritas\Netbackup\bin\admincmd"
If((Test-Path $path))
{
Write-Host $path "is found in" $y "drive"
Invoke-Item $y":\Veritas\Netbackup\bin\admincmd\bpimagelist -client abc.ge.com -d 11/01/2014 -U"
break
}
Else
{
continue
}
}
錯誤:
PS C:\Documents and Settings\abala\Desktop> .\veritasscript.ps1
D:\Veritas\Netbackup\bin\admincmd is found in D drive
Invoke-Item : Cannot find path 'C:\Veritas\Netbackup\bin\admincmd\bpimagelist -
client hclinnobpm01.jnj.com -d 11\01\2014 -U' because it does not exist.
At C:\Documents and Settings\admin_broy5\Desktop\veritasscript.ps1:8 char:17
+ Invoke-Item <<<< $y":\Veritas\Netbackup\bin\admincmd\bpimagelist -clien
t hclinnobpm01.jnj.com -d 11/01/2014 -U"
================================== ===============
我不知道爲什麼錯誤顯示C:\ Veritas當$ y的當前值是D,也在寫主機行它打印爲D驅動器中的路徑。 有人可以請建議一個方法來調用上面的exe文件嗎?
是的,它確實存在於d驅動器,這就是爲什麼輸出的第一行是 - 「d:\ VERITAS \的Netbackup \ BIN \ admincmd有是發現在D驅動器「 – 2014-11-05 17:34:13
沒有先生,甚至包括在TestPath中的bpimagelist不起作用。 目前爲了測試目的,我試圖用下面的代碼調用位於C:\ Windows \ syste32下的fsutil.exe,但即使這樣也行不通。 Invoke-Expression「volume diskfree」$ y「:」 有什麼建議嗎? – 2014-11-05 17:36:43