2013-07-15 88 views
0

我不能相信這和我找到它一樣困難。子文件夾中的powershell更新文件,如果它已經存在

我在服務器共享上有一個文件夾。該文件夾有一些子文件夾,可能包含或不包含我想用最新版本覆蓋的文件。

我已經做了很多谷歌搜索&想通下面的命令會得到我我想要的:

Get-ChildItem \\server1\websites\website\xml -Name "description-15240.txt" -Recurse | Copy-Item ".\description-15240.txt" -Destination $_.fullname 

...但事實並非如此。

於是,我打破了命令分解成零部件&找到獲取-ChildItem僅返回文件路徑FROM的-Name參數即

1 \無限\描述,15240.txt 68 \無限根\描述-15240.txt 79 \無限\描述-15240.txt 80 \無限\描述-15240.txt

而非\ SERVER1 \網站\網站\ XML \ 1 \無限\描述-15240.txt這是我所追求的。

的問題:我無法將Get-ChildItem返回的完整路徑 | { $_.FullName }不這樣做既不 確實| { $_.Parent }

有人能幫助& possiblly告訴我,如果Copy-Item可能工作以及?

非常感謝,N

回答

0

Name參數只能過濾的文件名,如果你想要的文件使用include參數的完整路徑。

Get-ChildItem \\server1\websites\website\xml -include "description-15240.txt" -Recurse | % { Copy-Item ".\description-15240.txt" -Destination $_.fullname } 
+0

這是修復它,謝謝。 – ninety

0

嘗試

gci \\server1\websites\website\xml -Name "description-15240.txt" -recurse |%{ convert-path $_.pspath} 
+0

這是正確的嗎?我得到一個'Convert-Path:無法將參數綁定到參數'Path',因爲當我嘗試它時它是空的錯誤。 – ninety

相關問題