TGViewer
Bash Days | Linux | DevOps Bash Days | Linux | DevOps @bashdays · 23.6K subscribers
Post #36 5.8K
Как говорит «Камень в лесу» — сегодня ничего не произошло.

Иногда хочется побыть таким камнем, но не сегодня. Сегодня у нас «Необычные способы узнать дату и время»

Ты скажешь есть же команда date, верно, есть и такая. Но мы же с тобой не пальцем деланные, нам надо посложнее, по геморойнее 😢

Есть несколько способов узнать из консоли текущую дату и время. К примеру ты можешь сделать это через утилиту stat.

stat -c'%z' /proc/self/stat

Временные метки [atime, mtime, ctime] будут равны времени создания [inode] для этого «файла». В данном случае это время обращения к данному файлу. Вообще proc сама по себе интересная штука. Почти для каждого файла есть свой набор функций для стандартных операций [read, write, open и т.п.].

Нихуя Ничего не понял? Забей, просто знай что команда stat выведет тебе текущую дату и время.

2023-07-18 11:42:22.592640126 +0000

А еще получить желаемое можно с помощью утилиты «ps»

ps --no-headers -o lstart -C ps

Время и дата равны времени запуска процесса ps

Tue Jul 18 11:44:07 2023

Следом идет команда «printf»

printf '%(%c)T\n'

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

Tue Jul 18 11:44:53 2023

А еще можно так:

( T='\t' ; echo ${T@P} )          
( T='\T' ; echo ${T@P} )
( T='\@' ; echo ${T@P} )
( T='\A' ; echo ${T@P} )
( T='\D{%X%t%x}'; echo ${T@P} )

${parameter@P} начиная с версии bash 4.4

16:16:22
04:16:26
04:16 PM
16:16
16:16:39 07/18/23

Ну и фаталити на закусочку, выведем unixtime тремя разными способами. Эквивалентно команде: date '+%s'

printf '%s\n' "$EPOCHREALTIME" 
printf '%s\n' "$EPOCHSECONDS"
printf '%(%s)T\n'

1689686418.954954
1689686418
1689686418

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

Разнообразь свои скрипты такими замысловатыми конструкциями и ни один девопс (кроме тебя естественно) нихрена не поймёт. Создашь басфактор и будешь самым незаменимым в коллективе 😠 пам пам пам

Всем добра котики!

tags: #bash #linux
—
🟢 Подпишись: @bashdays
  • 👍 78
More from @bashdays
  1. Oct 4, 2026Архивирование и хранение. Часть 2/4. Всем привет, с вами снова TagdTagd. Первая часть тут:…
  2. Sep 29, 2026Самый жаркий холивар в команде — это не systemd, а какие заказать роллы на всю команду. Од…
  3. Sep 24, 2026Post #1565
  4. Sep 23, 2026Здрасти приехали, решил я в кой-то веке воспользоваться услугами Codex, создал аккаунт, по…
  5. Sep 22, 2026Всем привет, с вами TagdTagd. Сегодня опять поднимем тему архивов, но немного с другой сто…
  6. Sep 15, 2026Всем привет, с вами TagdTagd. И это вторая часть. Практическая. С первой частью можешь озн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →