Output dmesg menunjukkan jumlah milidetik + detik sejak sistem dimulai.
[ 10.470000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 14.610000] device eth0 entered promiscuous mode
[ 18.750000] cfg80211: Calling CRDA for country: DE
[ 18.750000] cfg80211: Regulatory domain changed to country: DE
T: Bagaimana cara menempatkan detik + milidetik ke format yang dapat dibaca?
Dmesg saya:
root@OpenWrt:/tmp# dmesg -h
dmesg: invalid option -- h
BusyBox v1.19.4 (2013-03-14 11:28:31 UTC) multi-call binary.
Usage: dmesg [-c] [-n LEVEL] [-s SIZE]
Print or control the kernel ring buffer
-c Clear ring buffer after printing
-n LEVEL Set console logging level
-s SIZE Buffer size
Untuk menginstal util-Linux tidak akan mungkin, karena tidak ada banyak ruang yang tersedia:
root@OpenWrt:~# df -h
Filesystem Size Used Available Use% Mounted on
rootfs 1.1M 956.0K 132.0K 88% /
/dev/root 2.0M 2.0M 0 100% /rom
tmpfs 14.3M 688.0K 13.6M 5% /tmp
tmpfs 512.0K 0 512.0K 0% /dev
/dev/mtdblock3 1.1M 956.0K 132.0K 88% /overlay
overlayfs:/overlay 1.1M 956.0K 132.0K 88% /
.
root@OpenWrt:/tmp# which awk perl sed bash sh shell tcsh
/usr/bin/awk
/bin/sed
/bin/sh
root@OpenWrt:~# date -h
date: invalid option -- h
BusyBox v1.19.4 (2013-03-14 11:28:31 UTC) multi-call binary.
Usage: date [OPTIONS] [+FMT] [TIME]
Display time (using +FMT), or set time
[-s,--set] TIME Set time to TIME
-u,--utc Work in UTC (don't convert to local time)
-R,--rfc-2822 Output RFC-2822 compliant date string
-I[SPEC] Output ISO-8601 compliant date string
SPEC='date' (default) for date only,
'hours', 'minutes', or 'seconds' for date and
time to the indicated precision
-r,--reference FILE Display last modification time of FILE
-d,--date TIME Display TIME, not 'now'
-D FMT Use FMT for -d TIME conversion
-k Set Kernel timezone from localtime and exit
/var/log/syslog
sistem Debian, periksa log itu; mungkin berisi informasi yang sama tetapi dengan cap waktu yang dapat dibaca.date
perintah tidak mendukung-d
bendera, kan? Dan kurasa juga tidak ada python? Yangawk
implementasi ini? Apakah ituGNU awk
setidaknya?date -d
, jawaban saya yang diperbarui harusnya berfungsi.Jawaban:
Saya pikir apa yang Anda cari adalah
-T
seperti yang didokumentasikan diman dmesg
:Jadi, misalnya:
Menjadi:
Saya menemukan trik keren di sini . The
sed
ekspresi yang digunakan ada yang salah karena akan gagal jika ada lebih dari satu]
didmesg
baris. Saya telah memodifikasinya untuk bekerja dengan semua case yang saya temukan didmesg
output saya sendiri . Jadi, ini seharusnya berfungsi dengan asumsi Andadate
berperilaku seperti yang diharapkan:Outputnya seperti:
sumber
-T
hanya flag yang mendukungutil-linux-ng-2.20.x
dan lebih tinggi, sehingga akan mendukung Ubuntu 12.04 dan lebih tinggi dan tidak di CentOS / RHEL 6.3 dan lebih rendahdmesg
selama bertahun-tahun dan saya hanya belajar tentang bendera ini sekarang. Kenapa tidak ada yang mengatakan itu padaku? : Ddmesg -T
halnya script pada jawaban juga menunjukkan waktu yang salah saat hibernasi.versi Anda
dmesg
jelas bukan versi lengkaputil-linux
tetapi disediakan olehbusybox
.busybox
menyediakan dasar - dasar banyak utilitas, tetapi tidak menyediakan semua fitur bagus mereka.jika Anda ingin menggunakan
-T
flag seperti yang disarankan oleh terdon, Anda harus menggunakandmesg
biner yang disediakan olehutil-linux
sumber