Bạn có thể thay đổi định dạng dấu thời gian cho lệnh lịch sử trên tcsh


7

Khi tôi chạy historylệnh (trên tcsh), nó chỉ in phần TIME của dấu thời gian và bỏ qua ngày:

 3  15:07   echo $PATH
 4  15:07   ls -la

Trong bash, bạn có thể sử dụng HISTTIMEFORMATbiến môi trường để ảnh hưởng đến biểu mẫu dấu thời gian được in bằng historylệnh.

Ví dụ set HISTTIMEFORMAT="[%F %T %Z] "

Có cách nào để làm điều này trong tcsh và nếu vậy, phiên bản nào của tcsh là bắt buộc? Chúng tôi có tcsh 6.17.00.

Môi trường: Red Har Linux 4.4, nhưng tôi cho rằng câu trả lời không nên bị ảnh hưởng vì đây historylà một hệ vỏ nhị phân được tích hợp sẵn và không phải do hệ điều hành cung cấp.

Câu trả lời:


10

Từ tcshtrang người đàn ông.

đoạn trích

history Từ đầu tiên cho biết số lượng sự kiện lịch sử cần lưu. Từ thứ hai tùy chọn (+) cho biết định dạng được in trong lịch sử; nếu không được đưa ra, %h\t%T\t%R\nđược sử dụng. Trình tự định dạng được mô tả dưới đây theo dấu nhắc; lưu ý ý nghĩa biến của %R. Đặt thành 100theo mặc định.

Thí dụ

$ set history= ( 1000 "%h %W/%D/%Y %T %R\n" )

Kết quả trong:

$ history
     2 09/08/2014 22:48 set history= ( 1000 "%h %W/%D/%Y %T %R\n" )
     7 09/08/2014 22:49 ls
     9 09/08/2014 22:49 echo "hi"
    10 09/08/2014 22:49 history

Điều này sẽ dẫn đến lịch sử được duy trì cho 1000 lệnh cuối cùng với định dạng "%h %W/%D/%Y %T %R\n".

  • %h - lịch sử #
  • %W/%D/%Y - tháng ngày năm
  • `% T - 24 giờ. thời gian
  • %R - lệnh chạy

Các mô tả đầy đủ của các macro này được xác định trong tcshtrang man, cuộn xuống phần promptgiải thích lệnh. Họ ở đó.


Bạn có tháng & ngày đảo ngược; bạn thực sự có nghĩa là "% W /% D /% Y" cho định dạng này: 25/12/2014. :-)
Kevin_Kinsey

Và cảm ơn bạn đã trả lời ... Tôi thực sự tự hỏi chính xác khi tôi chạy lệnh cuối cùng hoặc khác :-) Nghiêm túc. :-)
Kevin_Kinsey
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.