2014-09-18 47 views
7

我在寫一個powershell腳本。我想知道如何創建一個以當前日期作爲名稱的文件夾。文件夾名稱應該是「yyyy-MM-dd」(根據.NET自定義格式字符串)。在powershell中創建當前日期作爲名稱的文件夾

我知道,創建文件夾,我需要使用這個命令:

New-Item -ItemType directory -Path "some path" 

一個可能的解決方案(如果我要創建在同一目錄下的文件夾中的腳本是:

$date = Get-Date 
$date = $date.ToString("yyyy-MM-dd") 
New-Item -ItemType directory -Path ".\$date" 

有沒有辦法鏈的命令,所以我不需要創建變量?

回答

14

是。

New-Item -ItemType Directory -Path ".\$((Get-Date).ToShortDateString())" 

或alroc建議爲了獲得相同的格式無論文化。

New-Item -ItemType Directory -Path ".\$((Get-Date).ToString('yyyy-MM-dd'))" 
+1

謝謝,這是我一直在尋找。解決方案中唯一的問題是短日期,因爲它取決於用戶的語言。請修復ToString(「yyyy-MM-dd」),以便我可以接受你的答案。 – Santhos 2014-09-18 16:22:48

+0

你不能移動嗎? ;) alroc發佈了一個可能適用於ya的答案。對我來說,我得到了你正在尋找的東西,並沒有三思而後行。 – notjustme 2014-09-18 16:23:50

+0

我對「」和「'不確定,我想將您的問題標記爲正確。 – Santhos 2014-09-18 16:29:04

9

不要使用ToShortDateString() @notjustme寫道;其格式取決於區域設置和區域&語言控制面板中的日期格式設置。例如,現在我的電腦上,這將產生以下目錄名稱:

C:\Users\me\09\18\2014 

精確設置日期字符串的形式來代替。

New-Item -ItemType Directory -Path ".\$((Get-Date).ToString('yyyy-MM-dd'))" 
+0

我剛剛在@notjustme答案中評論了這個。 – Santhos 2014-09-18 16:24:11

0

越短

$date = get-date -Format yyyy-mm-dd

相關問題