Команды linux

Display and Format dates with the shell date command line

The most widely used shell command line utility to manipulate a date in Linux and Unix/macOS is certainly to use the shell command. Remember that macOS is based on Unix and will come with the Unix version of the shell command. Though, there is some important catch to be aware as the implementation between Linux and Unix diverges greatly.

The shell command uses the where the format is a serie of format specifiers used to define the output format of the date and time. The options and format specifiers may vary between platforms. The date format example below will work across Unix/macOS and Linux platforms.

How to ensure consistent usage between Linux and macOS?

One way to guarantee consistent behavior between Linux and macOS to formate a date is to make sure to always use the GNU date version of the date command line utility. It comes pre-installed by default on most Linux distributions, if not you will need to install the coreutils package. On Ubuntu/Debian you can run .

The GNU coreutils can be installed on macOS using homebrew . The GNU date command line will then be available as on macOS.

By using the
bash type command, you can define a small wrapper
bash function to test whether GNU is installed or fallback to the default version. This is a convenient wrapper to add in your on Mac.

What are the differences between Linux and Unix/macOS?

It is important to understand that the POSIX standard (POSIX.2) only specifies the option and the operand of the shell date utility. You can find the full specification in
Posix 2 IEEE Std 1003.2. This means that any other options or operands in the shell utility are systems specific implementation and may not be portable across platforms or environments.

The Unix and macOS shell utility is compatible with the POSIX.2 standard and the , , , , , , , and options are all extensions to the standard.

The Linux shell utility is the GNU date shell version which is also compatible with the POSIX.2 standard and also sets a large number of options that are all extensions to the standard. The Linux version of is sometime called when installed on different platforms.

The option will set the date in UTC instead of using the local time zone. Since it’s part of the POSIX.2 specification both version from Linux and Unix/macOS would display the same output for the command .

Format a date on Linux using the GNU date command line

Before bash version 5, it was common to use the Linux date command to get the current Unix time, example . This should now be avoided since you can directly use the shell variable. See
What’s New in GNU Bash 5?.

Another variant has been to use to get the real-time in microseconds, though GNU date will return nanoseconds while Bash provides which is in microseconds directly. So, depending on the case you may have to do a simple
division in bash to get the correct value. The example below can be easily ported to get milliseconds instead. See the (or ) pages for the full list of formatting options.

Another widely used option of GNU date is the option which makes handling dates extremely easy as you can use human-readable words to define a date. The option allows you to easily do operations on dates which is a big strength of the GNU date utility.

See more examples in the FAQ on
.

Format a date on Unix/macOS using the BSD date command line

The macOS shell command is quite more limited than the GNU version. Though, you can still use it for basic formatting. See the pages for the full list of formatting options. You can have the same behavior as option by using the (don’t try to set date, display only) and (adjust date) options.

Указание времени выполнения

Утилита поддерживает широкий диапазон временных характеристик. Вы можете указать время, дату и приращение от текущего времени:

  • Время — чтобы указать время, используйте форму или . Чтобы указать 12-часовой формат времени, используйте или после времени. Вы также можете использовать такие строки, как , , или (16:00). По истечении указанного времени задание будет выполнено на следующий день.
  • Дата — команда позволяет запланировать выполнение задания на заданную дату. Дату можно указать, используя название месяца, за которым следует день и (необязательно) год. Вы можете использовать строки, например, , или будний день. Дата также может быть указана в , , или .
  • Increment — также принимает приращения в формате , где — это число, а может быть одной из следующих строк: , , или .

Время, дату и приращение можно комбинировать, вот несколько примеров:

  • Запланируйте работу на ближайшее воскресенье на время на десять минут позже текущего:

  • Запланируйте запуск задания на 13:00 через два дня:

  • Запланируйте запуск задания на 12:30 21 октября 2020 г .:

  • Запланируйте запуск задания через час:

Вы также можете указать время и дату в используя параметр . Вот пример:

Linux Date Command with Examples

10 Мая 2020
|

Терминал

В этом руководстве мы рассмотрим основы date команды.

Команда отображает или устанавливает системную дату. Чаще всего он используется для печати даты и времени в разных форматах и ​​для расчета будущих и прошлых дат.

Использование Date

Синтаксис команды следующий:

Чтобы отобразить текущее системное время и дату, используя форматирование по умолчанию, вызовите команду без каких-либо параметров и аргументов:

Выходные данные включают день недели, месяц, день месяца, время, часовой пояс и год:

Вывод команды может быть отформатирован с помощью последовательности символов управления форматом, перед которой стоит знак. Элементы управления форматом начинаются с символа и заменяются их значениями.

Символ будет заменен на год, месяц и день месяца:

Вот еще один пример:

Ниже приведен небольшой список некоторых наиболее распространенных символов форматирования:

  • — Сокращенное название дня недели (например, понедельник)
  • — Сокращенное полное название дня недели (например, понедельник)
  • — Сокращенное название месяца (например, январь).
  • — сокращенное длинное название месяца (например, январь)
  • — день месяца (например, 01)
  • — час (00..23)
  • — час (01.12.12)
  • — День года (001..366)
  • — Месяц (01.12.12)
  • — Минута (00..59)
  • — Второй (00 .. 60)
  • — день недели (1..7)
  • — Полный год (например, 2019)

Чтобы получить полный список всех параметров форматирования, запустите или в своем терминале.

Пользовательское форматирование даты

Опция позволяет работать на дату конкретного. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:

Использование пользовательского форматирования:

Строка даты принимает значения, такие как «завтра», «пятница», «последняя пятница», «следующая пятница», «следующий месяц», «следующая неделя» .. и т. Д.

Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время 6:30 утра следующего понедельника на восточном побережье Австралии, введите:

Переопределить часовой пояс

Команда возвращает дату в системном часовом поясе по умолчанию . Чтобы использовать другой часовой пояс, установите переменную среды в желаемый часовой пояс.

Например, чтобы показать время в Мельбурне, введите:

Чтобы получить список всех доступных часовых поясов , вы можете либо перечислить файлы в каталоге, либо использовать команду.

Конвертер эпох

Команда может быть использована в качестве преобразователя Epoch. Время, или метки времени Unix, — это количество секунд, прошедших с 1 января 1970 года в 00:00:00 UTC.

Чтобы напечатать количество секунд от эпохи до текущего дня, вызовите с контролем формата:

Чтобы преобразовать секунды с начала эпохи в дату, установите секунды в виде строки даты с префиксом :

Использование с другими командами

Команда чаще всего используется для создания имен файлов, которые содержат текущее время и дату.

Команда ниже создаст файл резервной копии Mysql в следующем формате 

Вы также можете использовать команду в своих сценариях оболочки. В приведенном ниже примере мы присваиваем выход к переменной:

Показать время последнего изменения файла

Команда с параметром показывает время последнего изменения файла. Например:

Если вы хотите изменить временную метку файла, используйте команду .

Установите системное время и дату

Установка системного времени и даты вручную с помощью этой команды не рекомендуется, поскольку в большинстве дистрибутивов Linux системные часы синхронизируются с помощью служб или .

Однако, если вы хотите установить системные часы вручную, вы можете использовать эту опцию. Например, если вы хотите установить дату и время 17:30, 01 июня 2019 г., введите:

Команда Linux отображает или устанавливает системную дату и время.

5) Используйте команду date, чтобы проверить будущие даты

Так же, как вы можете проверять прошлые даты, команда date также позволяет отображать будущие даты.

Например, чтобы проверить завтрашний прогон:

$ date --date="tomorrow"
Mon May 10 15:50:14 IST 2021
$

Чтобы узнать, какая дата будет ровно через неделю, запустите:

$ date --date="next week"
Sun May 16 15:51:03 IST 2021
$

Чтобы отобразить дату через две недели, выполните:

$ date --date="2 weeks"
Sun May 23 15:51:46 IST 2021
$

Чтобы отобразить дату через 4 месяца после запуска:

$ date --date="4 months"
Thu Sep  9 15:52:33 IST 2021
$

И чтобы проверить дату через 2 года, запустите:

$ date --date="2 years"
Tue May  9 15:53:20 IST 2023
$

Стандарт времени

Есть два основных стандарта времени: местное (локальное) время (localtime) и Всемирное координированное время (Coordinated Universal Time, UTC). Местное время зависит от текущего часового пояса, а время UTC — это глобальное время, которое одинаково для всех и не зависит от часовых поясов. UTC иногда называют гринвичским временем (GMT), хотя это немного разные вещи.

Стандарт, который будет использоваться в аппаратных часах, выбирается операционной системой. По умолчанию Windows использует местное время, macOS использует UTC, а другие UNIX и UNIX-подобные системы используют разные стандарты. ОС, использующая стандарт UTC, обычно рассматривает аппаратные часы как UTC и вносит в них поправку для установки времени ОС при загрузке в соответствии с часовым поясом.

Если на машине установлено несколько операционных систем, все они будут получать текущее время от одних и тех же аппаратных часов: рекомендуется настроить их на использование UTC, чтобы избежать конфликтов. В противном случае, если аппаратные часы установлены на местное время, сразу несколько операционных систем могут попытаться скорректировать его, например, после перехода на летнее/зимнее время, что приведёт к избыточной коррекции; проблемы могут также возникнуть при перемещении между различными часовыми поясами и использовании одной из операционных систем для сброса системных/аппаратных часов.

Значение аппаратных часов можно прочитать и изменить с помощью команды .
Вы можете узнать текущий стандарт, который Arch использует для работы с аппаратными часами, с помощью следующей команды:

$ timedatectl | grep local
RTC in local TZ: no

Переход на использование местного времени для аппаратных часов:

# timedatectl set-local-rtc 1

Переход на использование UTC для аппаратных часов:

# timedatectl set-local-rtc 

Эти команды автоматически обновят аппаратные часы и файл , дополнительные действия не требуются.

Во время запуска ядра, в момент загрузки драйвера RTC, значение системных часов может быть установлено по аппаратным часам. Произойдет ли это, зависит от аппаратной платформы, версии ядра и опций сборки ядра. Если это происходит, то в этот момент последовательности загрузки время аппаратных часов принимается за UTC и значение (N=0,1,2,..) будет установлено в 1.

Примечание:

  • Использование требует активной шины D-Bus. Поэтому использование этой команды под chroot (например, во время установки) может оказаться невозможным. В таких случаях можно вернуться к команде hwclock или использовать systemd-nspawn вместо chroot.
  • Если файл отсутствует, systemd по умолчанию считает, что аппаратные часы используют UTC.

UTC в Microsoft Windows

Это делается простым изменением в реестре: откройте и добавьте ключ со значением здесь:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal

Это можно сделать одной командой в командной строке, запущенной от имени администратора:

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f

Также можно создать файл и импортировать его в реестр двойным щелчком мыши:

Windows Registry Editor Version 5.00


"RealTimeIsUniversal"=dword:00000001

Если Windows попросит обновить часы в связи с изменениями DST, позвольте ей это сделать. Часы останутся в UTC, как и ожидалось, скорректируется только отображаемое время.

После этого и может понадобиться обновить.

Если у вас проблемы со смещением времени, попробуйте переустановить и заново установить часовой пояс:

# timedatectl set-timezone Europe/Moscow

Исторические примечания

В очень старых версиях Windows это всё не работает из-за их багов. Более конкретно,

  • В 64-битных версиях Windows 7 и старых сборках Windows 10 существовала ошибка, из-за которой требовалось значение со значением вместо . Эта ошибка была исправлена в новых сборках, и теперь работает только .
  • До Vista SP2 существовала ошибка, которая сбрасывала часы на местное время после возвращения из ждущего или спящего режима.

Для этих операционных систем рекомендуется использовать местное время.

UTC в Ubuntu

Если Ubuntu на любом диске обнаруживает Windows в процессе установки, то для аппаратных часов она автоматически начинает использовать местное время. Очевидно, это сделано специально, чтобы позволить новым пользователям Linux опробовать Ubuntu на своих компьютерах с Windows без редактирования реестра.

Изменить это поведение можно так же, как описано выше.

Как включить синхронизацию времени в Linux

К счастью, большинство Linux-дистрибутивов по умолчанию синхронизируют время. Если вы не замечали, что часы вашего компьютера расходятся с часами телефона, тогда наверняка ваш дистрибутив использует NTP-клиент / демон.

Синхронизировать время в Linux с systemd

В большинстве дистрибутивов Linux используется systemd, а вместе с ним и демон systemd-timesyncd. Это означает, что у вас уже есть NTP-клиент, предварительно установленный в Ubuntu, Debian, Fedora, Arch Linux, openSUSE, Manjaro и других. На этих дистрибутивах (и других основанных на них, например, Elementary ОС, Zorin OS) чтобы проверить, включена ли синхронизация NTP запустите команду:

Если на выходе отображается «», часы вашего компьютера автоматически синхорнизируются через NTP. Иногда вы можете также заметить — это означает, что часы синхронизируются с помощью другого инструмента.

Если вы видите , выполните следующую команду, чтобы включить синхронизацию времени NTP.

Это все, что вам нужно сделать в этих дистрибутивах.

Синхронизировать время в Linux без systemd

Для примера возьмем MX Linux. Запуск команды timedatectl показывает, что сетевое время включено, но systemd-timesyncd не используется. Как же синхронизировать время в таких дистрибутивах без systemd?

Проверьте с помощью следующей команды, которую вы можете использовать в любой другой операционной системе Linux.

В MX Linux вы увидите результат, подобный тому, что вы видите на следующем снимке экрана.

Из этого сообщения журнала видно, что клиент «ntpdate» запускался один раз. Это популярный клиент, установленный по умолчанию во многих дистрибутивах Linux. Он легкий и время от времени запрашивает только NTP-серверы. Он не работает в фоновом режиме и запускается сценариями, синхронизируется, а затем завершается.

Это означает, что время не синхронизируется с высокой точностью (например, миллисекунды или микросекунды), но оно достаточно точно для большинства.

В других операционных системах вы можете увидеть «ntpd», который является демоном, постоянно работающим в фоновом режиме и очень точным. Чем больше он работает, тем точнее время.

Если по какой-то причине вы хотите установить или в операционных системах с systemd, сначала отключите ntp-клиент systemd.

Конечно, приведенная выше команда не нужна в несистемных дистрибутивах.

Установить клиент ntpdate

Это подходит для домашних компьютеров, ноутбуков и других устройств, которые не постоянно подключены к Интернету.

На Debian, Ubuntu, Linux Mint, Zorin и других дистрибутивах, основанных на них, запустите:

На всех вышеперечисленных дистрибутивах на основе Debian он настроен по умолчанию на запуск после того, как обнаружит новое сетевое соединение. Вы можете принудительно синхронизировать время, если отключитесь от сети и подключитесь снова.

В Fedora ntpdate устарела, поэтому рекомендуется вместо этого использовать демон ntpd (см. Следующую главу). То же самое рекомендуется для всех других дистрибутивов по двум причинам:

  • Иногда они не включают ntpdate в отдельный пакет, а связывают его с ntpd из следующего раздела.
  • Они не автоматизируют запуск ntpdate автоматически при каждом сетевом подключении. Вы должны вставить ntpdate самостоятельно в скрипт, который автоматически запускается после подключения к сети.

В этом случае имеет смысл установить ntpd, как указано в следующей главе.

Установить ntpd Daemon

В Debian, Ubuntu, Zorin, Mint и других дистрибутивах, основанных на Debian или Ubuntu, запустите:

1 sudo apt install ntp

Эти дистрибутивы сразу запускают ntpd, а затем автоматически запускают его при каждой загрузке; никаких дальнейших действий от вас не требуется.

На Fedora установите с помощью:

На CentOS запустите:

Для Arch Linux используйте команду:

И на openSUSE введите:

После этого включите службу для запуска при загрузке, а затем запустите ее:

1
2

sudo systemctl enable ntpd

sudo systemctl start ntpd

В других дистрибутивах, которые работают без systemd, вам, возможно, придется выполнить следующие команды:

1
2

sudo update-rc.dntpd enable

sudo service ntpd start

Если вы получите сообщение об ошибке, что ntpd не существует, замените «ntpd» на «ntp» в приведенных выше командах. В некоторых дистрибутивах файлы службы демона ntpd называются по-разному.

Дата строкой

Опция -d позволяет работать на конкретную дату. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:

date -d "2010-02-07 12:54:21"
Sun Feb  7 12:54:21 MSK 2010

Использование пользовательского форматирования:

date -d '16 Dec 1974' +'%A, %d %B %Y'
Monday, 16 December 1974

Строка даты также может принимать значения, такие как “tomorrow”, “friday”, “last friday” “next friday”, “next month”, “next week”… и т. д.

date -d "last week"
Sat May 25 14:31:42 MSK 2019

Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время для 6:30 утра следующего понедельника по Московскому времени, введите:

date -d 'TZ="Europe/Moscow" 06:30 next Monday'
Mon Jun 10 06:30:00 MSK 2019

Примеры команд даты UNIX и синтаксис

Синтаксис:

date 
date "+format"

date
date «+format»

Отображение текущей даты и времени

Введите следующую команду:

date

date

Примеры результатов:

Tue Oct 27 15:35:08 CDT 2009

При выполнении без аргументов команда date показывает текущую дату и время

Установить текущее время

Вы должны запустить команду от имени пользователя root. Чтобы установить текущее время на 05:30:30, введите:

date 0530.30

date 0530.30

Предупреждение : пожалуйста, не меняйте дату и время Unix, когда сервер работает с более чем одним пользователем (многопользовательский режим) или критически важными службами, так как это может привести к неожиданному поведению.

Установить дату

Синтаксис следующий:

Установите дату 25 октября, 00:45, введите:

date 10250045

date 10250045

Снова вы должны запустить команду от имени пользователя root. В этом примере установите текущую дату и время на 15 октября 2009 г., 04:30 введите:

date --set="20091015 04:30"

date —set=»20091015 04:30″

Введите следующую команду:

date '+DATE: %m/%d/%y%nTIME:%H:%M:%S'

date ‘+DATE: %m/%d/%y%nTIME:%H:%M:%S’

Примеры результатов:

DATE: 10/27/09
TIME:15:50:44

Попробуйте следующие примеры:

date "+%m/%d/%y" 
date "+%Y%m%d"
date +'%-4.4h %2.1d %H:%M'

date «+%m/%d/%y»
date «+%Y%m%d»
date +’%-4.4h %2.1d %H:%M’

Понимание строк формата даты

На странице руководства по команде даты :

  • %a – Отображает сокращенное название дня недели для локали.
  • %A – Отображает полное название дня недели для локали.
  • %b – Отображает сокращенное название месяца для локали.
  • %B – Отображает полное название месяца языкового стандарта..
  • %c – Отображает дату и время, соответствующие языку (по умолчанию)..
  • %C – Отображает первые 2 цифры четырехзначного года в виде десятичного числа (00-99). Год делится на 100 и округляется до целого числа.
  • %d – Отображает день месяца в виде десятичного числа (01-31). В двузначном поле 0 используется в качестве начального заполнения пробела.
  • %D – Отображает дату в формате, эквивалентном  %m/%d/%y.
  • %e – Отображает день месяца в виде десятичного числа (1-31). В двузначном поле пробел используется как начальный пробел.
  • %h – Отображает сокращенное название месяца для локали (синоним% b
  • %H – Отображает час (24-часовой формат) в виде десятичного числа (00-23).
  • %I – Отображает час (12-часовой формат) в виде десятичного числа (01-12).
  • %j – Отображает день года в виде десятичного числа (001-366).
  • %k – Отображение 24-часовых часов в виде числа с выравниванием по правому краю и заполненного пробелами (0–23).
  • %m – Отображает месяц года в виде десятичного числа (01-12)
  • %M – Отображает минуты в виде десятичного числа (00-59)
  • %p –  Отображает эквивалент AM или PM для локали.
  • %r – Отображает 12-часовое время (01-12) в формате AM-PM; в локали POSIX он эквивалентен %I:%M:%S %p.
  • %S –  Отображает секунды в виде десятичного числа (00–59).
  • %T – Отображает 24-часовые часы (00–23) в формате, эквивалентном ЧЧ: ММ: СС ( HH:MM:SS.)
  • %w – Отображает день недели в виде десятичного числа в диапазоне 0-6 (воскресенье = 0). См. Дескриптор поля% u.

Дата строкой

Опция -d позволяет работать на конкретную дату. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:

date -d "2010-02-07 12:54:21"
Sun Feb  7 12:54:21 MSK 2010

Использование пользовательского форматирования:

date -d '16 Dec 1974' +'%A, %d %B %Y'
Monday, 16 December 1974

Строка даты также может принимать значения, такие как “tomorrow”, “friday”, “last friday” “next friday”, “next month”, “next week”… и т. д.

date -d "last week"
Sat May 25 14:31:42 MSK 2019

Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время для 6:30 утра следующего понедельника по Московскому времени, введите:

date -d 'TZ="Europe/Moscow" 06:30 next Monday'
Mon Jun 10 06:30:00 MSK 2019

Команды, используемые для работы с файлами

mkdir

Команда «mkdir» позволяет пользователям создавать каталоги/папки в системе. Пользователь, выполняющий эту команду, должен иметь соответствующие права на родительский каталог для создания каталога, иначе он получит ошибку.

Синтаксис:

Пример:

Ввод команды «mkdir NewDirectory» создаст каталог с именем NewDirectory в текущем каталоге.

rmdir

Команда «rmdir» позволяет пользователям удалять каталоги/папки из системы. Пользователь, выполняющий эту команду, должен иметь соответствующие права на родительский каталог для удаления каталога, иначе он получит ошибку. Синтаксис: rmdir Имя_каталога

Пример:

Ввод команды «rmdir NewDirectory» удалит каталог с именем NewDirectory в текущем каталоге.

rm

Команда «rm» используется для удаления файлов из каталога.

Синтаксис:

Пример:

Эта вышеупомянутая команда удалит файл «Test_File» из текущего каталога.

mv

Команда «mv» используется для двух целей

  1. Для перемещения файлов или каталогов с одного пути на другой путь в системе.
  2. Для переименования файла или папки.

«mv» для перемещения файлов

Синтаксис:

Пример: Рассмотрим наличие двух файлов в каталоге (File1 и File2). Ввод команды «mv File1 File2» переместит данные файла File1 в файл File2 и удалит исходный файл (т.е. File1) из системы.

«mv» для переименования файлов

Синтаксис:

Пример:

Рассмотрим наличие двух файлов в каталоге (File1 и File2). Ввод команды «mv File1 File_Rename» переименует File1 в File_Rename в том же каталоге. пример команды mv

cp

Команда «cp» используется для копирования данных из исходного файла в файл назначения. Ее действие почти аналогично команде «mv». Единственное отличие заключается в том, что при использовании команды «cp» исходный файл не удаляется из каталога после того, как его данные перемещены в файл назначения. Синтаксис:

Пример:

cat

Команда «cat» является обратной командой к команде «tac». Она используется для отображения каждой строки файла, начиная с первой и заканчивая последней.

Эта команда используется чаще, чем «tac». Синтаксис:

Пример:

Рассмотрим файл с именем Test_File, как показано ниже, команда «cat» выведет его данные на экран.

Рассмотрим наличие двух файлов (File1 и File2) в каталоге рабочего стола. С помощью вышеупомянутой команды cat пользователь может вывести данные из обоих файлов на экран.

Рассмотрим наличие двух файлов (File1 и File2) в каталоге Рабочего стола. С помощью вышеупомянутой команды cat пользователь может создать новый файл (File_Output) и добавить данные из обоих файлов (File1 и File2) в этот новый файл с именем File_Output, используя операнд «>».

head

Команда «head» печатает N верхних строк данных заданного входного файла или файла. По умолчанию она печатает первые 10 строк указанных файлов.

Синтаксис:

Пример:

Вышеупомянутая команда выведет только первые 5 строк файла New_Test.txt

tail

Команда «tail» печатает последние N строк данных заданного входа или файла. По умолчанию она печатает последние 10 строк указанных файлов.

Синтаксис:

Пример:

Вышеупомянутая команда выведет только последние 5 строк файла New_Test.txt.

echo

Команда «echo» используется для отображения любого выражения, переданного в качестве аргумента.

Синтаксис:

Пример:

Эта команда выводит на экран «user».

grep

Команда «grep» используется для поиска текста в указанном файле/папке.

Синтаксис:

Пример:

Вышеупомянутая команда будет искать слово «Are» в файле B.

zip

Команда «zip» используется для сжатия одного или нескольких файлов и сохранения их в новом файле с расширением .zip.

Синтаксис:

Пример:

Вышеупомянутая команда сожмет все три файла (Check.txt, Test.txt и Output.txt) и сохранит их в новом файле, который мы создаем с помощью этой команды, т.е. Files.zip.

unzip

Команда «unzip» используется для распаковки файла .zip и извлечения всех файлов из него в текущий каталог. Синтаксис:

Пример:

Рассмотрим, что у нас есть zip-файл с именем Files.zip, в котором находится сжатый файл .txt. Вышеупомянутая команда поможет вам разархивировать файл (Files.zip) и извлечь из него файл .txt в текущий каталог.

sudo

Команда «sudo -I» используется для продолжения сессии в качестве пользователя root, который имеет гораздо больше привилегий, чем обычный пользователь системы.

Синтаксис:

Пример:

DESCRIPTION

Display the current time in the given FORMAT, or set the system date.

-d, —date=STRING
display time described by STRING, not `now’
-f, —file=DATEFILE
like —date once for each line of DATEFILE
-r, —reference=FILE
display the last modification time of FILE
-R, —rfc-2822
output date and time in RFC 2822 format. Example: Mon, 07 Aug 2006 12:34:56 -0600
—rfc-3339=TIMESPEC
output date and time in RFC 3339 format. TIMESPEC=`date’, `seconds’, or `ns’ for date and time to the indicated precision. Date and time components are separated by a single space: 2006-08-07 12:34:56-06:00
-s, —set=STRING
set time described by STRING
-u, —utc, —universal
print or set Coordinated Universal Time
—help
display this help and exit
—version
output version information and exit

FORMAT controls the output. Interpreted sequences are:

%%
a literal %
%a
locale’s abbreviated weekday name (e.g., Sun)
%A
locale’s full weekday name (e.g., Sunday)
%b
locale’s abbreviated month name (e.g., Jan)
%B
locale’s full month name (e.g., January)
%c
locale’s date and time (e.g., Thu Mar 3 23:05:25 2005)
%C
century; like %Y, except omit last two digits (e.g., 20)
%d
day of month (e.g., 01)
%D
date; same as %m/%d/%y
%e
day of month, space padded; same as %_d
%F
full date; same as %Y-%m-%d
%g
last two digits of year of ISO week number (see %G)
%G
year of ISO week number (see %V); normally useful only with %V
%h
same as %b
%H
hour (00..23)
%I
hour (01..12)
%j
day of year (001..366)
%k
hour, space padded ( 0..23); same as %_H
%l
hour, space padded ( 1..12); same as %_I
%m
month (01..12)
%M
minute (00..59)
%n
a newline
%N
nanoseconds (000000000..999999999)
%p
locale’s equivalent of either AM or PM; blank if not known
%P
like %p, but lower case
%r
locale’s 12-hour clock time (e.g., 11:11:04 PM)
%R
24-hour hour and minute; same as %H:%M
%s
seconds since 1970-01-01 00:00:00 UTC
%S
second (00..60)
%t
a tab
%T
time; same as %H:%M:%S
%u
day of week (1..7); 1 is Monday
%U
week number of year, with Sunday as first day of week (00..53)
%V
ISO week number, with Monday as first day of week (01..53)
%w
day of week (0..6); 0 is Sunday
%W
week number of year, with Monday as first day of week (00..53)
%x
locale’s date representation (e.g., 12/31/99)
%X
locale’s time representation (e.g., 23:13:48)
%y
last two digits of year (00..99)
%Y
year
%z
+hhmm numeric time zone (e.g., -0400)
%:z
+hh:mm numeric time zone (e.g., -04:00)
%::z
+hh:mm:ss numeric time zone (e.g., -04:00:00)
%:::z
numeric time zone with : to necessary precision (e.g., -04, +05:30)
%Z
alphabetic time zone abbreviation (e.g., EDT)

By default, date pads numeric fields with zeroes. The following optional flags may follow `%’:

(hyphen) do not pad the field
_
(underscore) pad with spaces
(zero) pad with zeros
^
use upper case if possible
#
use opposite case if possible

After any flags comes an optional field width, as a decimal number; then an optional modifier, which is either E to use the locale’s alternate representations if available, or O to use the locale’s alternate numeric symbols if available.

Formated Output of date Command:

There are several switches, you can use to format the output of date command.

Get date time in MM/DD/YY HH:MM:SS format:

date +"%D %T"

03/25/17 14:40:32

Get current Unix epoch time:

date +%s

1554542637

Get date time in YYYY-MM-DD HH:MM:SS format:

date +"%Y-%m-%d %T"

2019-03-25 14:40:32

Parameter
Output

date +”%m/%d/%Y”
03/25/2019

date +”%d-%b-%Y”
25-Mar-2019

date +”%Y %b %m”
2019 Mar 25

date +”%H:%M”
14:40

date +”%I:%M %p”
02:40 PM

date +”%H:%M:%S”
14:40:32

date +”%I:%M:%S %p”
02:40:32 PM

date +”%m/%d/%Y %H:%M”
03/25/2019 14:40

date +”%A, %m %d %Y %H:%M”
Monday, 03 25 2019 14:40

date +”%A, %b %d, %Y %I:%M %p”
Monday, Mar 25, 2019 02:40 PM

date +”%A, %b %d, %Y %H:%M:%S”
Monday, Mar 25, 2019 14:40:32

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Работатека
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: