2012-08-06 90 views
0

我有多個文件需要發送到FTP站點。 這些文件總是.CSV,但文件名稱不斷變化。使用PowerShell將文件上傳到FTP但文件名爲動態

我有一個PowerShell腳本,可以成功發送文件。但是代碼的文件名是硬編碼的。我似乎無法找到一種動態選擇文件名的方法,並使用動態文件名將其寫入FTP站點。 (希望有道理)

有人可以幫忙嗎?

非常感謝

+0

向我們展示你到底有什麼樣的腳本。 – vonPryz 2012-08-06 06:41:13

回答

2

是否還有其他屬性可以使用?例如在我的情況下,我經常必須選擇目錄中最新的文件。我使用LastWriteTime屬性做了類似的事情。

$lastWrittenCSV = Get-ChildItem -Path C:\csvFiles\ -Filter *.csv | Sort-Object -Descending LastWriteTime | Select-Object -First 1 

然後你可以運行你對$lastWrittenCSV.FullName腳本(全路徑),並將其上傳爲$lastWrittenCSV.Name(只是文件名)。

你甚至可以我們某種標誌的文件來跟蹤哪些文件自上次上傳新的,並上傳:

$flagFile = Get-Item C:\csvFiles\lastupload.flg 

Get-ChildItem -path C:\csvFiles\ -Filter *.csv | ? {$_.LastWriteTime -gt $flagFile.lastWriteTime} | ForEach {Upload-File $_.FullName} 

New-Item -ItemType File -Force -Path $flagFile.FullName 

祝你好運!

+0

工作就像一個真正的治療..非常感謝...非常感謝 – Harry 2012-08-08 00:26:30