Bash:
Преобразование даты в строку
Как это делать:
Ниже приведены примеры того, как преобразовать дату в строку в Bash:
# Отобразить текущую дату и время в стандартном формате
echo $(date)
# Пользовательский формат: ГГГГ-ММ-ДД
echo $(date '+%Y-%m-%d')
# Включить время
echo $(date '+%Y-%m-%d %H:%M:%S')
# Преобразовать существующую дату
existing_date='2023-03-17 08:00:00'
date -d "$existing_date" '+%A, %B %d, %Y'
Примеры вывода для приведенных выше команд:
Сб Мар 25 12:04:22 PDT 2023
2023-03-25
2023-03-25 12:04:22
Пятница, Март 17, 2023
Глубокое погружение
Unix-подобные системы с ранних времен используют команду date
для работы с датой и временем. Её гибкость позволяет использовать множество форматов благодаря спецификаторам формата, таким как %Y
для года и %d
для дня.
Есть альтернативы команде date
, если вы используете другой технологический стек. Например, в Python есть datetime.strftime
, в то время как JavaScript предлагает объект Date
с методами вроде toLocaleDateString()
.
При преобразовании дат в Bash помните, что команда date
может работать как с текущей временной меткой системы, так и с предоставленной датой. Также критически важно учитывать обработку часовых поясов для точного преобразования дат.
Смотрите также
- GNU coreutils ‘date’: https://www.gnu.org/software/coreutils/manual/html_node/date-invocation.html
- Расширенное руководство по скриптингу в Bash: https://tldp.org/LDP/abs/html/
- Спецификаторы формата для команды date: https://man7.org/linux/man-pages/man1/date.1.html