Як я можу отримати поточну дату / час у терміналі. Я в основному запускаю свою систему в текстовому (консольному) режимі і мені потрібна команда, щоб знати поточну дату / час.
Як я можу отримати поточну дату / час у терміналі. Я в основному запускаю свою систему в текстовому (консольному) режимі і мені потрібна команда, щоб знати поточну дату / час.
Відповіді:
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