Powershell Get-Date -Day (Новый год)

Пояснение Powershell Get-Date:

-Day

Specifies the day of the month that is displayed. Enter a value from 1 to 31. >The default is the current day.

If you specify a value that is greater than the number of days in the month, >PowerShell adds the number of days to the month and displays the result. For >example, "Get-Date -Month 2 -Day 31" displays "March 3", not "February 31".

Будет ли это перенесено на новый год, или мне нужно будет настроить код для определения нового года, если дата в конечном итоге преобразуется в January 1?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
1 058
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Нет, он не будет перенесен, потому что в декабре 31 день, и все, что больше 31 дня, является исключением.

Get-Date -Month 2 -Day 32

Результат:

Get-Date : Cannot validate argument on parameter 'Day'. The 32 argument is greater than the maximum allowed range of 31. Supply an argument that is less than or equal to 31 and then try the command again.
At line:1 char:24
+ get-date -month 2 -day 32
+
    + CategoryInfo : InvalidData: (:) [Get-Date], ParameterBindingValidationException
    + FullyQualifiedErrorId :
ParameterArgumentValidationError,Microsoft.PowerShell.Commands.GetDateCommand

То же самое для 12-го месяца:

Get-Date -Month 12 -Day 32

Результат

Get-Date : Cannot validate argument on parameter 'Day'. The 32 argument is greater than the maximum allowed range of 31. Supply an argument that is less than or equal to 31 and then try the command again.
At line:1 char:24
+ get-date -month 2 -day 32
+
    + CategoryInfo : InvalidData: (:) [Get-Date], ParameterBindingValidationException
    + FullyQualifiedErrorId :
ParameterArgumentValidationError,Microsoft.PowerShell.Commands.GetDateCommand

Интересный. Я даже не думал о том, что добавление дня переместит его в 32, что не имеет значения. Думаю, мне нужно просто систематически корректировать каждое значение в течение года. Спасибо.

Jacob Kucinic 16.12.2018 22:15

@JacobKucinic - вы можете получить количество дней в любом месяце, таким образом ... [datetime]::DaysInMonth(2018, 12). [ухмылка]

Lee_Dailey 16.12.2018 22:53

@JacobKucinic Думаю, мне нужно просто систематически корректировать каждое значение в течение года. Не изобретайте велосипед заново. Он уже здесь: (Get-Date -Month 12 -Day 31) + (New-TimeSpan -Days 1).

user4003407 17.12.2018 04:46

Другие вопросы по теме