2012-11-22 53 views
0

我已經創建了下面已經過測試和成功運行的腳本,以修改所選文件中包含的所有文件的「上次修改日期」夾。修改Powershell腳本以修改所選目錄中子文件夾的「上次修改日期」

$a = Get-Date "22/11/2012 10:00 AM" 

$b = Get-ChildItem "C:\MyFiles" 

foreach ($i in $b) 
{ 
    $i.LastWriteTime = $a 
    $a = $a.AddMinutes(1)  
} 

$b 

我只是在尋找一些幫助修改這個腳本包括所選文件夾內的所有子文件夾/文件,因爲我目前不必修改這個手動「C的子文件夾中更改日期: \ MyFiles「..例如「C:\ MyFiles \ A」,「C:\ MyFiles \ B」等。

另外..我還想知道如何刪除行「$ a = Get-Date」22/11/2012 10:00 AM」,使其自動設置日期今天,我不必手動輸入一個日期。

+0

我對Powershell很新,但是..我現在修改了這個以獲取curre NT日期/時間,但我認爲$ a.AddMinutes現在可以刪除/修改,因爲這不是必需的? $ A = GET-日期 $ B = GET-ChildItem 「C:\ MYFILES」 的foreach($ i的$ B) { $ i.LastWriteTime = $一個 $ a = $ a.AddMinutes (0) } $ b – JChutey

回答

1

這樣?

$a = get-date 
    $b = Get-ChildItem "C:\MyFiles" -recurse | ? { !$_.psiscontainer } 
    foreach ($i in $b) 
    { 
     $i.LastWriteTime = $a 
     $a = $a.AddMinutes(1)  
    } 

    $b 

,或者如果你不需要在每個文件後添加一分鐘:

 $dir = read-host "Insert path" 
    $b = Get-ChildItem $dir -recurse | ? { !$_.psiscontainer } 
    foreach ($i in $b) 
    { 
     $i.LastWriteTime = get-date    
    } 

    $b 
+0

完美!這現在修改所有子文件夾中的時間/日期!我不認爲你會介意幫助上面的評論,$ a.AddMinutes是否需要?因爲我不需要將日期顯示爲前一個文件的+1分鐘,所有這些都可以設置爲今天的日期/時間。 – JChutey

+0

現貨!正是我所需要的......謝謝基督徒! – JChutey

+0

很高興幫助! –