Значения не накапливаются в Powershell - PullRequest
3 голосов
/ 27 января 2020

Я новичок в Powershell, и я написал небольшую утилиту для PS, в которой я предоставляю значения в $ firstDate и $ lastDate, но когда я запускаю эту программу, эти два значения не выводятся в $ value. и помогите мне в этом.

$firstDate=Get-Date -Year.2018 -Month.12 -Day.1
$lastDate=Get-Date -Year.2020 -Month.1 -Day.12
$value = $firstDate -eq $lastDate

1 Ответ

1 голос
/ 27 января 2020

когда вы используете -year или -month или -day для предоставления значений, вы должны определить значение для него после space. Вы используете точечную запись, которая используется в основном для доступа к свойству или методу переменной. (Примечание от @mklement0: PowerShell также поддерживает: в качестве разделителя между именем параметра и аргументом)

$firstDate=Get-Date -Year 2018 -Month 12 -Day 1
$lastDate=Get-Date -Year 2020 -Month 1 -Day 12
$value = $firstDate -eq $lastDate
# value = False. 

Это даст вам значение false, поскольку даты не совпадают.

ОБНОВЛЕНИЕ

Приведенный выше код никогда не будет равен true, даже если вы установите год, месяц и день одинаковыми. Это потому, что фактор времени DateTime будет отключен. Вы можете сделать следующее, чтобы убедиться, что вы сравниваете только Dates

$value = $firstDate.Date -eq $lastDate.Date

Это будет только сравнивать дату и игнорировать время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...