我正在编写一个PowerShell脚本。我想知道如何创建一个当前日期为名称的文件夹。文件夹名称应为" yyyy-MM-dd" (根据.NET自定义格式字符串)。
我知道要创建文件夹,我需要使用此命令:
New-Item -ItemType directory -Path "some path"
可能的解决方案是(如果我想在与脚本相同的目录中创建文件夹:
$date = Get-Date
$date = $date.ToString("yyyy-MM-dd")
New-Item -ItemType directory -Path ".\$date"
有没有办法将命令链接起来,所以我不需要创建变量?
答案 0 :(得分:21)
是
New-Item -ItemType Directory -Path ".\$((Get-Date).ToShortDateString())"
或alroc建议,无论文化如何,都可以获得相同的格式。
New-Item -ItemType Directory -Path ".\$((Get-Date).ToString('yyyy-MM-dd'))"
答案 1 :(得分:12)
不要使用ToShortDateString()
作为@notjustme写道;其格式取决于区域设置和区域和日期格式设置。语言控制面板。例如,在我的电脑上,这将产生以下目录名称:
C:\Users\me\09\18\2014
显式设置日期字符串的格式。
New-Item -ItemType Directory -Path ".\$((Get-Date).ToString('yyyy-MM-dd'))"
答案 2 :(得分:1)
缩短
$date = get-date -Format yyyy-mm-dd
答案 3 :(得分:1)
$folderName = (Get-Date).tostring("dd-MM-yyyy-hh-mm-ss")
New-Item -ItemType Directory -Path "E:\parent" -Name $FolderName
它正在 E:\ parent
下创建名为 11-06-2020-07-29-41 的文件夹答案 4 :(得分:0)
$datecurrent = get-date -Format dd-MM-yy
New-Item -ItemType directory -Path ".\$datecurrent"