Solusi 1:
Anda dapat mencoba last perintah:
last john
Ini mencetak riwayat masuk/keluar pengguna john. Sedangkan berlari saja
last
mencetak riwayat masuk/keluar semua pengguna.
Solusi 2:
Jika Anda perlu menelusuri sejarah lebih dari satu bulan, Anda dapat membaca /var/log/wtmp.1 file dengan last perintah.
last -f wtmp.1 john akan menunjukkan riwayat login bulan sebelumnya untuk pengguna john .
Keluaran log terakhir tidak terlalu berat dan relatif mudah diurai, jadi saya mungkin akan mengirimkan keluaran ke grep untuk mencari pola tanggal tertentu.
last john | grep -E 'Aug (2[0-9]|30) ' untuk menunjukkan 20-30 Agustus. Atau sesuatu seperti:
last -f /var/log/wtmp.1 john | grep -E 'Jul (1[0-9]|2[0-9]|30) ' untuk memperoleh 10-30 Juli untuk pengguna john .
Solusi 3:
Bagaimana cara mengekstrak riwayat masuk untuk rentang tanggal tertentu di Linux?
Contoh untuk mencantumkan semua pengguna yang masuk dari tanggal 25 hingga 28/Agu:
last | while read line
do
date=`date -d "$(echo $line | awk '{ print $5" "$6" "$7 }')" +%s`
[[ $date -ge `date -d "Aug 25 00:00" +%s` && $date -le `date -d "Aug 28 00:00" +%s` ]] && echo $line
done
awk '{ print $5" "$6" "$7 }'untuk mengekstrak waktu tanggal pada kolom yang sesuai darilastkeluaran+%suntuk mengonversi datetime ke Epoch time-geberdiri untuk lebih besar dari atau sama dengan-leberarti kurang dari atau sama dengan
Anda juga dapat melakukannya untuk pengguna tertentu dengan last <username> .