9 Практически примери за командата за дата на Linux

9 Практически примери за командата за дата на Linux

Запознайте се с командата за дата на Linux. Не, не може да ви донесе романтична вечер. Но може да форматира датата в горната част на любовно писмо, което сте написали в терминала. Достатъчно близо? Да започваме.





Докато пишете скриптове в Bash, неизбежно ще трябва да отпечатате дата или час и тази дата или час често ще трябва да бъдат в определен формат, за да отговарят на изискванията на други функции. Тогава влиза в действие командата за дата.





Както ще видите, командата за дата в Linux е проста и гъвкава, което означава, че ще приема всички видове въвеждане и ще генерира дати в множество формати. Той има и други специални функции за различни компютърни задачи, свързани с времето. Опциите и синтаксисът на датата на обучение определено ще ви направят по -опитни в писането на скриптове и може би по -точни.





Основен синтаксис на командата за дата

Основният синтаксис за командата date е следният:

date [OPTION]... [+FORMAT]

Това означава, че след влизане дата , можете да въведете опция, като или , за да извикате определена функция, която ще обясним по -долу.



Можете също да проследите тези с низове за форматиране, които винаги започват с a + характер. Тези низове приемат специфични форматиращи символи, също изброени по -долу, за да определят изхода.

Практически примери за команда за дата на Linux

Можете да поставите командата за дата по няколко начина. Нека разгледаме най -често срещаните и полезни случаи на използване на същите.





1. Вземете текущата дата и час

Можете да получите текущата местна дата и час във формат по подразбиране, като предадете командата за дата сама.

$ date
Mon 19 Apr 2021 12:41:17 PM CDT

Както можете да видите, датата ви дава съответната информация за дата и час в прост и предвидим формат.





2. Вземете минала или бъдеща дата

Да речем, че във вашия скрипт трябва да изчислите часа и датата, които са точно една седмица след това. Командата за дата ви покрива. Издайте тази команда, като използвате опция за получаване на подробна информация, свързана с бъдещи дати:

$ date -d 'next week'
Tue 27 Apr 2021 05:21:07 PM CDT

The option, съкратено от date, е мястото, където командата date наистина блести. Той ще приема различни персонализирани низове за дата; те могат да бъдат технически, например 20200315 , 15.03.20 , или четимо като 15 март 2020 г. . Но можете да използвате и относителни термини, като утре , вчера , следващата неделя , и още. Поиграйте с него и вижте как датата интерпретира различните входни низове.

3. Форматирайте дата

Може би сте забелязали в предишните два примера, по подразбиране датата е с много специфичен формат за час. И така, ако имате нужда от него в различен формат?

Можете да форматирате изхода си подобно на командата printf . Например, можете да отпечатате текущата година с тази команда:

някой ме блокира във фейсбук как мога да видя профила им
date +'Year: %Y'

The + сигнализира, че искате форматиран низ и каквото и да се появи след това вътре в цитат марки, датата ще бъде обработена и форматирана за изхода.

Ето списък на символите за форматиране, които най -вероятно ще използвате:

Форматиране на знакИзход
%HЧас (00-24)
%IЧас (01-12)
Минута (00-59)
Втори (00-60)
%pСутрин или Следобед
%ДА СЕПълно име на делничния ден (напр. Неделя)
%да сеСъкратено име на делничния ден (напр. Слънце)
Номер на делничния ден (0-6)
Ден от месеца (01-31)
%jДен на годината (001-366)
% BПълно име на месеца (напр. Януари)
% bСъкратено име за месец (напр. Януари)
%mНомер на месец (01-12)

Можете да получите пълен списък с форматиращи символи, като използвате --помогне опция в терминала.

date --help

4. Вземете деня от седмицата

Едно много често и практично използване на форматирането на дата е получаването на деня от седмицата за дадена дата. Например, за да проверите на кой ден от седмицата е паднал 4 ноември 1995 г., въведете команда, подобна на тази:

$ date -d '1996-04-11' +'%A'
Friday

The опцията показва, че искате конкретна дата, '1996-04-11' низ показва коя дата искате, а + „% A“ форматирането показва, че искате да изведете деня от седмицата. Не забравяйте, че низът за дата може да бъде в много формати, а не само този, посочен тук.

5. Получавайте координирано универсално време

Чрез издаване на -u флаг, можете да получите текущото време в координирано универсално време (UTC).

$ date -u
Wed 21 Apr 2021 12:46:59 PM UTC

6. Изведете местното време в друга часова зона

Ако трябва да получите дата в друга часова зона, можете да направите това, като зададете TZ = променлива на средата преди командата date.

Например можете да видите текущата дата и час в планинско стандартно време (MST) със следната команда:

$ TZ=MST date
Tue 20 Apr 2021 03:45:29 PM MST

За вашите цели просто сменете MST с инициалите за всяка часова зона, която предпочитате. Можете също да изберете да използвате UTC обозначение. Например, за да получите същата часова зона, заменете MST с UTC+7 .

Освен това можете да посочите континент и голям град, за да получите времето за местното време на конкретния град. Например:

$ TZ=America/Phoenix date
Tue 20 Apr 2021 03:45:29 PM MST

7. Вземете времето за последна промяна на файла

Ако например създавате резервни копия, често ще трябва да получавате последната дата на промяна на файл. Можете да направите това, като предадете -r опция и именуване на файл.

$ date -r /etc/shadow
Wed 14 Apr 2021 07:53:02 AM CDT

Можете да промените часовите марки на файл, като използвате командата за докосване в Linux също така.

8. Изход и преобразуване на времето на епохата

Можете да изчислите броя секунди оттогава епохата на Unix със следната команда:

$ date +%s
1618955631

Можете също така да обърнете процеса и да конвертирате Unix времето в формат, който може да се чете от човека чрез използването на опция и @ характер.

$ date -d @1618955631
Tue 20 Apr 2021 04:53:51 PM CDT

Изчисляването на времето на Unix е полезно, ако имате нужда от точна секунда, която определено ще поддържа синхронизиране на други устройства.

9. Временно задайте системно време

Можете да промените системния си часовник от терминала с командата date, като предадете аргумент, последван от времето, което искате. Например, можете да настроите системния часовник на 24 часа в бъдеще със следната команда:

date -s 'tomorrow'

Обърнете внимание, че ще ви трябват привилегии sudo, за да предадете тази команда. В допълнение, промяната вероятно няма да бъде постоянна (което означава, че часовникът ви ще се върне към предишния път след рестартиране), тъй като повечето дистрибуции използват други помощни програми за управление на системния часовник, които ще отменят промяната при зареждане.

Обяснена команда за дата на Linux

Както в живота, не можете да избягате от времето в Linux. Ето защо е изключително важно да разберете как да го форматирате и използвате чрез командата date. Едно нещо, което със сигурност ще срещнете при управлението на файлове в Linux, са различните часови марки, които файловете носят със себе си.

Дял Дял Туит електронна поща Разбиране на времеви отпечатъци на Linux файлове: mtime, ctime и atime

Искате ли да научите повече за това как Linux следи промените във файл? Ето какво трябва да знаете за Linux File Timestamps.

icloud не ми позволява да влизам в iphone
Прочетете Напред Свързани теми
  • Linux
  • Команди на Linux
За автора Джордан Глор(51 статии са публикувани)

Джордан е писател на персонал в MUO, който се стреми да направи Linux достъпен и без стрес за всички. Той също така пише ръководства за поверителност и производителност.

Още от Джордан Глор

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате
Категория Linux