2017-10-05 88 views
0

我必須每天將文件移動到一個月份文件夾。當新的月份到來時,腳本應該識別新創建的文件夾(我將使用不同的腳本創建)並開始將文件推送到新的文件夾。現在,年份發生變化時,腳本應標識包含新年的文件夾,然後在該月份的子文件夾下將文件推送到新的子文件夾。移動文件到新創建的子文件夾

對不起,如果這聽起來很混亂。需要幫助我知道如何使用PowerShell將文件移動到另一個文件夾,但進入該層次結構是我無法完成的。

+0

請顯示您到目前爲止所嘗試的內容。您可以使用Get-Date命令來完成此任務,並且它有很好的文檔記錄。 –

回答

0

嘗試這樣:

$CurrentDate=get-date 
$year, $month= $CurrentDate.Year, $CurrentDate.Month 
$storagedir="c:\temp\$year\$month" 

if (! (Test-Path $storagedir)) 
{ 
    New-Item -ItemType Directory $storagedir 
} 

Move-Item "C:\temp\dbhash.csv" $storagedir -Force 
+0

非常感謝你。關於如何獲取月份名稱的任何建議我已經嘗試過$ year,$ month = $ CurrentDate.Year,$ CurrentDate.MonthNames,但它沒有奏效。 –

+0

試試這個:(Get-Culture).DateTimeFormat.GetMonthName($ month) – Esperento57

+0

謝謝我已經用其他方式做了。但是,當我再次運行這個腳本來移動同一個子文件夾中的其他文件時,它不起作用,因爲子文件夾在整個月內保持不變,所以它應該能夠在該月的每一天在同一個子文件夾中移動文件。 –

0

沒關係明白了。下面是最適合我的作品

$CurrentDate=get-date 
$year = $CurrentDate.Year 
$folderName = (Get-Date).tostring("dd-MM-yyyy-hh") 
$storagedir="C:\Users\$year\$folderName" 
if (! (Test-Path $storagedir)) 
{ 
    New-Item -ItemType Directory $storagedir 
    } 
if (Test-Path $storagedir) 
{ 

Move-Item "C:\Users" $storagedir -Force 
} 
相關問題