Как получить дату и время с помощью интерфейса командной строки?

68

Как получить текущую дату / время в терминале. Я в основном запускаю свою систему в текстовом (консольном) режиме и нуждаюсь в команде, чтобы узнать текущую дату / время.     

задан Sharad Gautam 09.06.2015 в 14:56
источник

8 ответов

114

Команда date покажет вам дату и время.

man date покажет вам, как управлять выводом в любом формате, который вам нужен, если вы хотите что-то отличное от стандартного вывода. Например:

date "+%H:%M:%S   %d/%m/%y"

выводит дату и время в формате 14:09:22 09/06/2015

Более легкую для чтения версию справочной страницы можно найти на страницах пользователя Ubuntu     

ответ дан Carl H 09.06.2015 в 15:00
источник
17

Время в командной строке:

PS1="\@ \w$bk"

Похож: 11:41 AM ~

Маленький любитель, заключенный в скобки:

PS1="[ \@ \w$bk ]"

Похож: [11:36 AM ~]

Добавьте пользователя и localhost со временем, все в скобках:

PS1="[ \u on \h \@ \w$bk ]"

Похож: [DrPete on LittleSorrel 10:34 AM ~]

Сбросить запрос по умолчанию #: PS1="# "

Чтобы сделать приглашение постоянно доступным, добавьте строку приглашения по вашему выбору, т. е.

export PS1="\@ \w$bk "

to ~ / .profile.

Не могу помочь, мы сейчас катаемся ... добавляем цвета, определяем их в .profile , чтобы упростить их настройку:

 # Install GNU coreutils
    bk="\[3[0;38m\]" #means no background and white lines
    txtBlue="\[3[0;34m\]"   #letter color blue
    txtRed="\[3[0;31m\]"    #letter color red
    txtCyan="\[3[1;36m\]"   #letter color cyan
    txtWhite="\[3[1;37m\]"  #letter color white
    txtYellow="\[3[1;33m\]" #letter color yellow

Тогда запрос с надписью с надписью будет выглядеть следующим образом:

PS1="[ $txtYellow\u on $txtCyan\h $txtRed\@ $txtWhite\w$bk ]"
    
ответ дан drPete 09.06.2015 в 17:40
12

Существует список команд, используемых для времени и даты:

  1. Команда date

    $ date 
    Tue Jun  9 18:04:30 EEST 2015
    
  2. Команда zdump используется для повторения времени в указанном часовом поясе.

    $ zdump EEST
    EEST  Tue Jun  9 15:05:17 2015 EEST
    
  3. Hwclock

    $ sudo hwclock
    Tue 09 Jun 2015 06:05:55 PM EEST  -0.656710 seconds
    
  4. , но нужно установить xview-клиенты

    sudo apt-get install xview-clients
    
  5. , используя команду ntpdate . ntpdate используется для установки системного времени, но без использования sudo будет просто печатать время и дату.

    $ ntpdate
    
    26 Jun 10:48:34 ntpdate[4748]: no servers can be used, exiting
    
ответ дан Maythux 09.06.2015 в 17:07
8

С Ubuntu 15.04 (systemd) также есть timedatectl , которое показывает вам время и позволяет вам изменять его и многое другое в man timedatectl .

Без аргументов он дает

% timedatectl
Warning: Ignoring the TZ variable. Reading the system's time zone setting only.

      Local time: ke 2015-06-10 10:31:59 EEST
  Universal time: ke 2015-06-10 07:31:59 UTC
        RTC time: ke 2015-06-10 07:31:59
       Time zone: Europe/Helsinki (EEST, +0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: yes
 Last DST change: DST began at
                  su 2015-03-29 02:59:59 EET
                  su 2015-03-29 04:00:00 EEST
 Next DST change: DST ends (the clock jumps one hour backwards) at
                  su 2015-10-25 03:59:59 EEST
                  su 2015-10-25 03:00:00 EET

И еще одна приятная функция, которую я использовал, - это timedatectl set-ntp true , которая активирует systemd-timesyncd , которая является клиентом встроенного SNTP (Simple Network Time Protocol), который синхронизирует ваши часы с удаленным сервером.

    
ответ дан Mikaela 10.06.2015 в 09:35
7

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

Вы можете добавить команду даты в свое приглашение , в котором будет отображаться (фиксированное ) каждый раз, когда оболочка готова к команде, или вы можете использовать один из терминальных мультиплексоров, имеющих строку состояния. Мой предпочтительный (хотя я признаю самый старый) - это экран GNU.

В консоли или в терминале скажите через ssh , если вы используете экран , среди zillions разных < a href="http://www.rackaid.com/blog/linux-screen-tutorial-and-how-to/"> вещи, которые вы можете сделать (я думал о screen как неизбежном для работая, когда у меня был только текстовый терминал), у вас есть опция --- которая обычно находится в конфигурации по умолчанию --- наличия часов в строке состояния:

(Снимок экрана находится на виртуальном терминале, но он аналогичен на виртуальной консоли).     

ответ дан Rmano 09.06.2015 в 17:50
4

Также будет выводиться дата и время:

sudo hwclock

Подробнее:

man hwclock
    
ответ дан JoKeR 09.06.2015 в 16:38
1

Не было упоминания о python, поэтому я вышлю его здесь:

$ python -c 'import time;print(time.asctime(time.localtime()))'                                                                       
Tue Nov 29 20:25:27 2016

Как это работает, довольно просто:

  • мы импортируем time module
  • Функция localtime() предоставляет тип данных struct со всей необходимой информацией, такой как время суток, день, год и т. д.
  • asctime() преобразует всю эту информацию в строку, и мы печатаем ее хорошо отформатированный

Работает в python 2 и 3.     

ответ дан Sergiy Kolodyazhnyy 30.11.2016 в 04:25
0

, если вы ищете что-то вроде YYYYMMDDHHMMSS , 20160804020100 используйте это:

date +%Y%m%d%H%M%S

он обслуживает большинство целей, таких как резервное копирование файлов или фильтрация журналов.

    
ответ дан computingfreak 30.11.2016 в 04:17