Преобразуйте метку времени Unix в человекочитаемый формат на AIX

top позволяет Вам дисплей статистики процесса непрерывно, пока не остановлено по сравнению с. ps который дает Вам единственный снимок.

4
16.10.2013, 12:11
6 ответов

Если бы Вы были на Linux, то Вы могли бы просто использовать:

date -d @1381260225

Или Вы могли использовать простофилю:

echo "1381260225" | gawk '{print strftime("%c",$1)}'

Или Python:

python -c "import datetime; print  datetime.datetime.fromtimestamp(1381865497)"

Или Perl:

perl -e 'print(scalar(localtime(1381865497)), "\n";'

Однако ни одно из этих решений не доступно на запасе установка AIX. Все эти инструменты (GNU coreutils, GNU awk, Perl, Python) доступны как отдельные пакеты как часть панели инструментов AIX для приложений Linux.

4
27.01.2020, 20:51
  • 1
    date -d изм GNU. Эквивалент для OpenBSD был бы date -r 1381260225. И я даже не уверен, что это стандартно, потому что Солярис даже не имеет эквивалента -d или -r. Солярис только, кажется, может установить или отобразить текущее время. дата –  kurtm 15.10.2013, 22:41
  • 2
    @kurtm AIX, кажется, не имеет -r также, посмотрите здесь. Я думаю RahulPatil awk решение будет самым портативным. –  terdon♦ 15.10.2013, 22:44
  • 3
    @terdon я соглашаюсь, что awk решение является, вероятно, самым портативным. Я полагал, что AIX не будет поддерживать его также, но не имеет никаких машин AIX, которые я могу проверить. –  kurtm 15.10.2013, 22:45
  • 4
    @kurtm можно искать страницы справочника AIX онлайн. Ни один из этих методов не работает над AIX, даже awk метод как awk не имеет strftime (это - расширение GNU). –  Gilles 'SO- stop being evil' 16.10.2013, 00:48
  • 5
    Для получения информации: AIX идет с жемчугом, я вполне уверен, он установлен по умолчанию. Вы не должны использовать панель инструментов AIX для Linux для установки его, это находится в базовом изображении. –  EightBitTony 09.04.2014, 10:55

Можно, вероятно, отступить к Perl:

perl -MPOSIX=strftime -e 'print strftime("%Y-%m-%d %T", localtime($ARGV[0])), "\n"' 1381260225
2013-10-08 15:23:45
3
27.01.2020, 20:51
  • 1
    +1, но если я не ошибаюсь, AIX, не имеет Perl по умолчанию, и я не знаю ли POSIX::strftime будет установлен, даже если это сделает. Они могут быть установлены без корневого доступа на AIX? –  terdon♦ 15.10.2013, 22:28
  • 2
    @terdon является установкой значения по умолчанию Python в AIX? –  Rahul Patil 15.10.2013, 22:29
  • 3
    @RahulPatil я сомневаюсь относительно этого (но действительно не знайте). Однако и жемчуг и Python могут быть загружены отсюда. –  terdon♦ 15.10.2013, 22:32
  • 4
    @RahulPatil, Если что-то не имеет жемчуга по умолчанию, он вряд ли будет иметь Python по умолчанию. –  kurtm 15.10.2013, 22:38
  • 5
    @RahulPatil&tredon: машина, которую я использую, не имеет или Perl или Python одновременно, у меня нет доступа администратора к тому же. –  ramp 16.10.2013, 12:29
# echo 1381260225 | python -c 'import sys; import time; print time.ctime( float( sys.stdin.read() ) )'
Wed Oct  9 02:23:45 2013
1
27.01.2020, 20:51
  • 1
    ответ Python был уже дан. AIX не установили Python по умолчанию. –  Gilles 'SO- stop being evil' 16.10.2013, 12:12
  • 2
    Мой лучше. Сравните количество букв. –  polar bear on the white snow 16.10.2013, 15:33
[1130074] Немного больше "проливаний":

1
27.01.2020, 20:51

а как насчет такого??

echo "`date +"%y%m%d%H%M%S"`"
-3
27.01.2020, 20:51

В AIX есть ksh93, поэтому:

  • местное время (здесь материковая Британия):

    $ ksh93 -c 'printf "%(%Y-%m-%d %T %z)T\n" "#$1"' ksh93 1381260225
    2013-10-08 20:23:45 +0100
    
  • Время по Гринвичу/UTC

    $ TZ=GMT0 ksh93 -c 'printf "%(%Y-%m-%d %T %Z)T\n" "#$1"' ksh93 1381260225
    2013-10-08 19:23:45 GMT
    
1
27.01.2020, 20:51

Теги

Похожие вопросы