Получение текущей даты

Fish Shell:
Получение текущей даты

Как это сделать:

В Fish Shell получение текущей даты - раз плюнуть. Используйте команду date:

# Получить текущую дату в формате по умолчанию
date

# Пример вывода
Wed Apr  5 15:26:42 PDT 2023

# Получить текущую дату в пользовательском формате, например, YYYY-MM-DD
date "+%Y-%m-%d"

# Пример вывода
2023-04-05

Если вы хотите присвоить её переменной, просто сделайте:

# Сохранить текущую дату в переменной
set current_date (date "+%Y-%m-%d")

# Вывести значение переменной
echo $current_date

# Пример вывода
2023-04-05

Глубокое погружение

Исторически команда date происходит из UNIX, и существует она уже десятилетиями. В Fish Shell вы используете более дружественную версию этого древнего инструмента. Формат %Y-%m-%d для команды date дает вам год, месяц и день, но у вас есть тонна других опций, таких как %H для часов или %M для минут.

Почему использовать Fish вместо Bash или Zsh для этого? Ну, Fish известен своим более простым, более читаемым синтаксисом. Например, установка переменных намного понятнее (set varname value против varname=value), и вам не нужно использовать префикс $ при их использовании.

Альтернативы встроенной date в Fish могут включать установку более тяжелых инструментов, таких как GNU date, для получения большего количества функций или использование других функций Fish или даже внешних программ, если вам нужно более пользовательское поведение.

С точки зрения реализации, когда вы запускаете date в Fish, вы используете обертку Fish вокруг системной команды date. Это означает, что на Linux вы, вероятно, используете GNU date, а на macOS - версию BSD. Они довольно похожи, но есть некоторые тонкие различия в поддерживаемых опциях.

Смотрите также