HISTTIMEFORMAT tidak menunjukkan tanggal dan waktu yang benar untuk riwayat

13

Setelah mengekspor HISTTIMEFORMAT='%F %T'saya mencoba bertanyahistory

Tetapi hasilnya menunjukkan semua perintah dieksekusi pada hari yang sama.

Bagaimana saya bisa mengecek tanggal dan waktu aktual dari eksekusi perintah yang sebenarnya?

Özzesh
sumber
Itu seperti bertanya mengapa Anda tidak memiliki episode minggu terakhir dari teori Big Bang tentang VCR yang Anda beli pagi ini ...
tink
3
@tink saya tidak setuju bahwa itu jelas ...
Bernhard

Jawaban:

18

Jika Anda mengatur HISTTIMEFORMATbash di entri baru Anda disimpan dalam file sejarah dengan timestamp, perintah lama yang tidak memiliki timestamp (yang sebelum Anda atur HISTTIMEFORMATakan menampilkan satu dan cap tanggal-waktu yang sama (saya berasumsi satu dari entri pertama ditemukan dengan cap waktu nyata).

Masalah ini akan teratasi dengan sendirinya setelah riwayat lengkap Anda diperbarui dalam beberapa hari.

Anda dapat ~/.bash_historymelihat apakah baris pertama yang memiliki cap tanggal-waktu. Itu adalah garis yang dimulai dengan #diikuti oleh (10) angka 10 digit.

Anthon
sumber
1

Saya rasa ini adalah fitur. Ketika Anda baru saja mengubah pengaturan ini, Anda dapat melihat ~/.bash_historybahwa perintah lama tidak memiliki cap waktu yang disimpan. Jadi untuk perintah ini, itu hanya akan menganggap waktu saat ini.

Cobalah untuk memasukkan exportperintah ~/.bashrcdan menjalankan beberapa perintah. Anda akan melihat, bahwa dalam ~/.bash_historycap waktu tambahan akan disimpan, yang kemudian dapat ditampilkan oleh history. Jadi untuk perintah baru itu harus berfungsi seperti yang diharapkan.

Dengan demikian: Tidak kompatibel dengan perintah yang dijalankan di jendela terminal yang berbeda di masa lalu.

Bernhard
sumber