Date 如何将两个日期之间的所有日期添加到powershell中的数组中
我试图找出如何将2014年8月27日至2014年10月27日之间的所有日期添加到yyyyMMdd格式的数组中。谁能给我指一下正确的方向吗 像这样的方法应该会奏效:Date 如何将两个日期之间的所有日期添加到powershell中的数组中,date,powershell,Date,Powershell,我试图找出如何将2014年8月27日至2014年10月27日之间的所有日期添加到yyyyMMdd格式的数组中。谁能给我指一下正确的方向吗 像这样的方法应该会奏效: $date = [datetime]'08/27/2014' $array = do { $date.ToString('MM/dd/yy') $date = $date.AddDays(1) } until ($date -gt [datetime]'10/27/2014
$date = [datetime]'08/27/2014'
$array =
do {
$date.ToString('MM/dd/yy')
$date = $date.AddDays(1)
}
until ($date -gt [datetime]'10/27/2014')
像这样的方法应该会奏效:
$date = [datetime]'08/27/2014'
$array =
do {
$date.ToString('MM/dd/yy')
$date = $date.AddDays(1)
}
until ($date -gt [datetime]'10/27/2014')
另一种选择:
$ts = New-TimeSpan -Start (Get-Date -Year 2014 -Month 08 -Day 27) -End (Get-Date -Year 2014 -Month 10 -Day 27)
for ($i = 1; $i -le $ts.Days; $i++) {[array]$dates += ((Get-Date -Year 2014 -Month 08 -Day 27).AddDays($i))}
另一种选择:
$ts = New-TimeSpan -Start (Get-Date -Year 2014 -Month 08 -Day 27) -End (Get-Date -Year 2014 -Month 10 -Day 27)
for ($i = 1; $i -le $ts.Days; $i++) {[array]$dates += ((Get-Date -Year 2014 -Month 08 -Day 27).AddDays($i))}
谢谢大家,就像往常一样,一旦我在论坛上发帖,我的脑海里就会闪现出一个想法。这似乎能满足我的需要
$startDate = Get-Date 08-27-14
$endDate = Get-Date 10-27-14
while($startDate -le $endDate){
$nextDate = Get-Date $startDate -format yyyyMMdd
write-host $nextDate
$startDate = $startDate.AddDays(1)
}
谢谢大家,就像往常一样,一旦我在论坛上发帖,我的脑海里就会闪现出一个想法。这似乎能满足我的需要
$startDate = Get-Date 08-27-14
$endDate = Get-Date 10-27-14
while($startDate -le $endDate){
$nextDate = Get-Date $startDate -format yyyyMMdd
write-host $nextDate
$startDate = $startDate.AddDays(1)
}
谢谢你。我用这个做了一个函数
函数新建日期数组{
Param(
[参数(必需=$True)]
[日期时间]$StartDate,
[参数(必需=$True)]
[日期时间]$EndDate
)
[Array]$DateArray=@()
而((获取日期$StartDate.tostring('yyyy-MM-dd'))-lt(获取日期$EndDate.tostring('yyyy-MM-dd')){
$NextDate=获取日期$StartDate
$DateArray+=$NextDate
$startDate=$startDate.AddDays(1)
}
$DateArray+=$EndDate
返回$DateArray
}
谢谢您的帮助。我用这个做了一个函数
函数新建日期数组{
Param(
[参数(必需=$True)]
[日期时间]$StartDate,
[参数(必需=$True)]
[日期时间]$EndDate
)
[Array]$DateArray=@()
而((获取日期$StartDate.tostring('yyyy-MM-dd'))-lt(获取日期$EndDate.tostring('yyyy-MM-dd')){
$NextDate=获取日期$StartDate
$DateArray+=$NextDate
$startDate=$startDate.AddDays(1)
}
$DateArray+=$EndDate
返回$DateArray
}
看起来就像你能得到的一样干净
看起来尽可能干净。查看
new timespan
cmdlet查看new timespan
cmdlet