Як я можу отримати поточну дату / час у терміналі. Я в основному запускаю свою систему в текстовому (консольному) режимі і мені потрібна команда, щоб знати поточну дату / час.
Як я можу отримати поточну дату / час у терміналі. Я в основному запускаю свою систему в текстовому (консольному) режимі і мені потрібна команда, щоб знати поточну дату / час.
Відповіді:
date
Команда покаже вам дату і час.
man date
покаже вам, як контролювати вихід у будь-якому форматі, який вам потрібен, якщо ви хочете щось інше, ніж стандартний вихід. Наприклад:
date "+%H:%M:%S %d/%m/%y"
виводить дату та час у форматі 14:09:22 09/06/2015
Простішу для читання версію сторінки man можна знайти на Man U Pages
Час, як командний рядок:
PS1="\@ \w$bk"
Виглядає так: 11:41 ранку ~
Трохи вигадливіше, укладене в дужки:
PS1="[ \@ \w$bk ]"
Схоже: [11:36 ~]
Додайте користувача та localhost разом із часом, все в дужках:
PS1="[ \u on \h \@ \w$bk ]"
Виглядає так: [DrPete в LittleSorrel 10:34 AM ~]
Скинути підказку на номер за замовчуванням #: PS1="# "
Щоб зробити запит постійно доступним, додайте рядок підказок на ваш вибір, тобто
export PS1="\@ \w$bk "
to ~ / .profile.
Не можу допомогти, ми зараз прокручуємо ... додаємо кольори, визначаємо їх у .profile, щоб полегшити їх налаштування:
# Install GNU coreutils
bk="\[\033[0;38m\]" #means no background and white lines
txtBlue="\[\033[0;34m\]" #letter color blue
txtRed="\[\033[0;31m\]" #letter color red
txtCyan="\[\033[1;36m\]" #letter color cyan
txtWhite="\[\033[1;37m\]" #letter color white
txtYellow="\[\033[1;33m\]" #letter color yellow
Тоді рядовим кольоровим підказкою буде:
PS1="[ $txtYellow\u on $txtCyan\h $txtRed\@ $txtWhite\w$bk ]"
Є список команд, що використовуються для часу та дати:
Команда date
$ date
Tue Jun 9 18:04:30 EEST 2015
Команда, що zdump
використовується для відлуння часу у визначеному часовому поясі.
$ zdump EEST
EEST Tue Jun 9 15:05:17 2015 EEST
годинник
$ sudo hwclock
Tue 09 Jun 2015 06:05:55 PM EEST -0.656710 seconds
годинник, але потрібно встановити xview-клієнтів
sudo apt-get install xview-clients
за допомогою ntpdate
команди. ntpdate
використовується для встановлення системного часу, але використання без sudo
просто надрукує час та дату.
$ ntpdate
26 Jun 10:48:34 ntpdate[4748]: no servers can be used, exiting
З Ubuntu 15.04 (systemd) також є час, timedatectl
який показує вам час та дозволяє змінити його та інше man timedatectl
.
Без аргументів це дає
% timedatectl Попередження: Ігнорування змінної TZ. Читання лише параметрів часового поясу системи. Місцевий час: гру 2015-06-10 10:31:59 EEST Універсальний час: ke 2015-06-10 07:31:59 UTC Час RTC: ke 2015-06-10 07:31:59 Часовий пояс: Європа / Гельсінкі (EEST, +0300) NTP увімкнено: так NTP синхронізовано: так RTC в місцевій TZ: немає DST активний: так Остання зміна DST: DST розпочався о не 2015-03-29 02:59:59 EET не 2015-03-29 04:00:00 EEST Наступна зміна DST: закінчується DST (годинник стрибає на годину назад) о не 2015-10-25 03:59:59 EEST не 2015-10-25 03:00:00 EET
І ще одна приємна функція, яку я використав, це те, timedatectl set-ntp true
що активує systemd-timesyncd
вбудований клієнт SNTP (Simple Network Time Protocol), який синхронізує ваш годинник з віддаленим сервером.
$ timedatectl
добре працює тут і на Ubuntu 14.04.
Хоча всі відповіді тут правильні, вам потрібно використовувати date
команду вручну, щоб побачити час, коли ви хочете, і результат буде змішуватися з нормальним результатом вашої команди. Це здебільшого нормально, але колись це не практично.
Ви можете додати команду дата у своє запит, яка показуватиме (фіксований) годинник щоразу, коли оболонка готова до команди, або ви можете використовувати один із термінальних мультиплексорів, у яких є рядок стану. Мій улюблений (хоча я визнаю найдавніший) - це екран GNU.
У консолі або в терміналі, скажімо ssh
, якщо ви користуєтеся екраном , серед мільйонів різних речей, які ви можете зробити (я вважав, що screen
це неминуче для роботи, коли у мене був лише текстовий термінал) у вас є варіант --- який є зазвичай у конфігурації за замовчуванням --- мати годинник у рядку стану:
(Скріншот зображений на віртуальному терміналі, але він однаковий на віртуальній консолі).
Також буде виведено дату та час:
sudo hwclock
Більш детально:
man hwclock
Про пітона не згадувалося, тому я викину його тут:
$ python -c 'import time;print(time.asctime(time.localtime()))'
Tue Nov 29 20:25:27 2016
Спосіб роботи досить простий:
time
модульlocaltime()
Функція надає struct
типу даних всю необхідну інформацію, наприклад, час доби, день, рік тощо.asctime()
перетворює всю цю інформацію в рядок, і ми роздруковуємо її добре відформатованою Працює в python 2 та 3 так само.
якщо ви шукаєте щось таке, як YYYYMMDDHHMMSS , 20160804020100, використовуйте це:
date +%Y%m%d%H%M%S
він сервер більшості цілей, таких як резервне копіювання файлів або фільтрація журналу.
Якщо ви не впевнені в точності годинника вашої системи або хочете використовувати зовнішнє джерело часу, ви можете отримати час через Інтернет. Для кращої точності ви можете використовувати sntp
(встановлений за замовчуванням на MacOS і поставляється як частина дистрибутивів ntp) для отримання дати:
sntp pool.ntp.org
Якщо у вас є лише доступ до Інтернету в Інтернеті, він може бути отриманий через HTTP за допомогою HTP, який доступний у багатьох системах, як htpdate
правило, має точність лише до найближчої секунди, або ви можете отримати доступ до нього за допомогою TLS (який витягує часову позначку з TLS обмін), tlsdate
що може забезпечити кращу точність:
tlsdate -nV ntp.org
man date