2014-03-27 165 views
0

如何使用映射驅動器而不是真實路徑更改結果中的路徑?現在,我得到類似\\server\data\work\....我想看看它可以說K:\work\.... 我不能使用變量映射驅動器路徑,因爲它不與任務調度工作....如何使用映射的驅動器路徑而不是真正的路徑使Powershell輸出文件路徑?

Get-ChildItem -Recurse $source -Filter *.prt | Where{$_.LastWriteTime -gt (Get-Date).AddDays(-6)} | sort LastWriteTime -descending | select name,LastWriteTime,Directory | convertto-html -head $a -body "<H2>FILES LIST FOR PAST 7 DAYS</H2>" | out-file $output\result.htm 
+0

請提供更多的上下文。爲什麼/如何在已有映射驅動器的情況下獲得UNC路徑? –

+0

因爲我需要以admin身份將其設置爲計劃任務,並且任務計劃程序不會在powershell中以映射路徑工作...... –

+0

使用真正的UNC路徑有什麼問題?這應該在任何地方工作(也有一種方法很簡單 - 每個映射的驅動器指向一個UNC路徑,但以另一種方式並不簡單 - 一個UNC路徑可以由許多映射的驅動器號指向)。 – TessellatingHeckler

回答

0

映射的驅動器盤符只要您以驅動器映射的用戶身份運行Powershell腳本,就應該可以工作。否則,您需要使用New-PSDrive來映射該會話的驅動器。

New-PSDrive –Name K –PSProvider FileSystem –Root "\\server\data" 
+0

k驅動器已經映射,所以可以' t將被重新創建爲一個新的... –

+0

對不起,我試過你的方式,但得到了一個錯誤:New-PSDrive:名稱爲'K'的驅動器已經存在.'和腳本不會運行...我嘗試使用K:\並直接運行腳本,結果仍然是真實的路徑。我計劃它運行K:\,根本沒有結果.... –

+0

因此,它作爲一個計劃任務運行時存在K驅動器上的錯誤,但在相同的憑據下手動運行良好? – Kohlbrr

0

嘗試在腳本開始時創建PSDrive。確保運行腳本的帳戶(通過任務計劃程序)具有共享所需的權限。

New-PSDrive –Name "K" –PSProvider FileSystem –Root "\\server\data" 
#.... something something, creating $output variable etc. 
Get-ChildItem -Recurse $source -Filter *.prt | Where{$_.LastWriteTime -gt (Get-Date).AddDays(-6)} | sort LastWriteTime -descending | select name,LastWriteTime,Directory | convertto-html -head $a -body "<H2>FILES LIST FOR PAST 7 DAYS</H2>" | out-file $output\result.htm 
相關問題