PowerShell:
Преобразование даты в строку
Как это сделать:
Чтобы превратить дату в строку, мы используем метод ToString
или оператор формата -f
. Вот как:
# Текущая дата и время
$date = Get-Date
# Стандартное преобразование в строку
$dateString = $date.ToString()
Write-Output $dateString
# Пользовательский формат: Год-Месяц-День Часы:Минуты
$customFormat = $date.ToString("yyyy-MM-dd HH:mm")
Write-Output $customFormat
# Использование оператора -f для того же пользовательского формата
$fString = "{0:yyyy-MM-dd HH:mm}" -f $date
Write-Output $fString
Пример вывода:
2023-03-17 10:45:00
2023-03-17 10:45
2023-03-17 10:45
Подробнее
PowerShell, вдохновлённый командными оболочками Unix и Windows Script Host, ввёл в своём развитии, начиная с 2006 года, команду Get-Date
. Это стало предпочтительной командой для операций с датой и временем. Метод ToString
для объектов DateTime
и оператор формата -f
заимствованы из концепций .NET, что придает PowerShell его объектно-ориентированные черты.
Если ToString()
не указан с форматом, он выдает полную дату и время в формате текущей культуры. Но когда вам нужен определенный макет, например ISO 8601 или только день и месяц, пользовательские строки формата даты и времени .NET становятся вашими друзьями.
Есть и другой, старый способ — использование шаблонов формата DateTime
, таких как yyyy
для четырехзначного года, MM
для месяца с нулём впереди. Они интуитивно понятны и многообразны для создания любого формата даты и времени.
Затем есть POSIX в Unix, где команды date
правят бал с их собственными спецификаторами формата. PowerShell сблизил эти два мира, принимая знакомые методы, но также обеспечивая тесную совместимость с системами Windows.
Альтернативы включают в себя базовое объединение компонентов даты и использование внешних утилит или языковых инфраструктур. Однако PowerShell предпочитает держать всё в собственном доме с помощью мощных встроенных команд.
Вы можете более глубоко погрузиться в спецификаторы формата в официальной документации Microsoft или открыть для себя блоги сообщества, которые часто делятся творческими способами манипулирования датами и временем в PowerShell.
Смотрите также
- Официальная документация PowerShell о командлете Get-Date, которая предоставляет использование и примеры.
- Руководство по стандартным и пользовательским строкам формата от .NET для детального изучения форматирования.
- Блоги сообщества, такие как форумы PowerShell.org или Stack Overflow для реальных примеров и обсуждения решения проблем.