Sau khi xuất, HISTTIMEFORMAT='%F %T'
tôi đã cố gắng truy vấnhistory
Nhưng kết quả cho thấy tất cả các lệnh được thực hiện trong cùng một ngày.
Làm thế nào tôi có thể kiểm tra ngày và thời gian thực hiện lệnh thực tế?
Sau khi xuất, HISTTIMEFORMAT='%F %T'
tôi đã cố gắng truy vấnhistory
Nhưng kết quả cho thấy tất cả các lệnh được thực hiện trong cùng một ngày.
Làm thế nào tôi có thể kiểm tra ngày và thời gian thực hiện lệnh thực tế?
Câu trả lời:
Nếu bạn đặt HISTTIMEFORMAT
bash in, các mục nhập mới của bạn sẽ được lưu trong tệp lịch sử với dấu thời gian, các lệnh cũ hơn không có dấu thời gian (những lệnh trước khi bạn đặt HISTTIMEFORMAT
sẽ hiển thị một và cùng dấu thời gian (tôi giả sử là dấu thời gian từ mục đầu tiên được tìm thấy với dấu thời gian thực).
Vấn đề này sẽ tự giải quyết sau khi lịch sử đầy đủ của bạn đã được cập nhật trong một vài ngày.
Bạn có thể nhìn vào ~/.bash_history
để xem dòng đầu tiên có dấu thời gian là gì. Đó là những dòng bắt đầu bằng một #
số 10 chữ số (hiện tại).
Tôi nghĩ rằng đây là một tính năng. Khi bạn vừa thay đổi cài đặt này, bạn có thể thấy ~/.bash_history
rằng lệnh cũ không có dấu thời gian được lưu trữ. Vì vậy, đối với các lệnh này, nó sẽ chỉ giả sử thời gian hiện tại.
Cố gắng đưa export
lệnh vào ~/.bashrc
và thực hiện một vài lệnh. Bạn sẽ thấy, trong ~/.bash_history
một dấu thời gian bổ sung sẽ được lưu, sau đó có thể được hiển thị bởi history
. Vì vậy, đối với các lệnh mới, nó sẽ hoạt động như mong đợi.
Do đó: Không tương thích ngược với các lệnh được thực thi trong một cửa sổ đầu cuối khác trong quá khứ.