Linux’ta  History Kayıtlarını  Tarih ve Saate Göre Görüntüleyin ve Filtreleyin

Herhangi bir seçenek belirtmeden geçmiş komutunu çalıştırmak, size daha önce yürütülen komutların olay numaralarıyla birlikte temiz bir kaydını verecektir.

$ history 10

Çıktı:

Viewing the history list

Gördüğünüz gibi tarih ve saati göstermiyor, dolayısıyla bunlar olmadan kayıtları filtrelemeyi bile başaramazsınız.

Bu makalede, geçmiş kayıtlarına nasıl tarih ve saat ekleyeceğinizi, farklı örnekleri ve kayıtları tarih ve saate göre nasıl filtreleyeceğinizi öğreneceksiniz.

Tarih ve Saati Geçmiş Kayıtlarına Dahil Etme

Geçmiş kayıtlarında tarih ve saati görüntülemek için Bash kabuğu için “~/.bashrc” gibi kabuk yapılandırma dosyasını “HISTTIMEFORMAT” değişkeniyle “HISTTIMEFORMAT” değişkeniyle değiştirmeniz gerekir.

$ vim ~/.bashrc

Çıktı:

Ardından, geçmiş kayıtlarında tam tarih ve saati görüntülemek için yapılandırma dosyasının sonuna aşağıdaki satırı ekleyin.

export HISTTIMEFORMAT="%c "

Çıktı:

Dosyayı kaydedip kapatın, ardından source komutunu kullanarak kabuk yapılandırma değişikliklerini yeniden yükleyin.

$ source ~/.bashrc

Çıktı:

Son olarak, yeni çıktı biçimini onaylamak için history komutunu çalıştırın.

$ history 5

Çıktı:

Farklı Formatlarda Daha Fazla Örnek

Önceden tanımlanmış tarih ve zaman damgası “%c” biçimini kullanmak yerine, geçmiş kayıtlarındaki ayrıntı düzeyini iyileştirmek için çıktıyı diğer birçok biçimle özelleştirebilirsiniz.

Aşağıda, bilinen tüm tarih ve saat biçimi kodlarının bir listesi bulunmaktadır:

Codes Açıklama
%d Gün
%m Ay
%y Yıl
%H Saat
%M Tutanak
%S Saniye
%F Tam tarih (YMD formatında)
%T Zaman (H:M:S formatı)
%c Tam tarih ve zaman damgası (D-M-Y S:M:S formatı)

Aşağıda, bu formatın kullanımında becerinizi geliştirmek için izleyebileceğiniz birkaç örnek verilmiştir.

Tarih ve Saatin Geçmiş Kayıtlarında Görüntülenmesi

Tarihi “YDD” biçiminde ve saati “H:M:S” biçiminde görüntülemek için “%F %T => ” kodunu ve okunabilirliği artırmak için önce ve sonra boşluklarla birlikte kullanılan ” => ” kodunu kullanın.

export HISTTIMEFORMAT="%F %T => "

Çıktı:

Geçmiş Kayıtlarında Özel Tarih ve Saat Formatını Görüntüleme

Bu sefer, tarihi “D:M:Y” olarak görüntülemek için “%d:%m:%y” kodunu ve saati “H:M” biçiminde görüntülemek için “%H:%M” kodunu kullanın.

export HISTTIMEFORMAT="%d:%m:%y %H:%M => "

Çıktı:

Tarih ve Saati Süslü Bir Şekilde Görüntüleme

“Tarih: [%d-%m-%y]” kodu, tarihi “Tarih: [D-M-Y]” biçiminde gösterecek ve “Saat: [%T]”, saati “Saat: [H:M:S]” biçiminde gösterecektir.

export HISTTIMEFORMAT="Date: [%d-%m-%y] / Time: [%T] => "

Çıktı:

Geçmiş Kayıtlarını Tarih ve Saate Göre Filtreleme

Kabuk yapılandırma dosyasına tarih ve saat biçimi kodlarını eklediğinizde, size tüm komutların aynı gün yürütüldüğünü gösterecektir. Ertesi gün yeni komutu çalıştırdığınızda, yeni tarih ve saati seçecektir.

Aşağıda, “%F %T” biçim koduyla veya komut geçmişini farklı tarih ve saatlere göre filtreleyecek benzer bir şeyle çalışması amaçlanan birkaç örnek verilmiştir.

Belirli Bir Tarihe Ait Geçmiş Kayıtlarını Listeleme

Belirli bir tarihe ait geçmiş kayıtlarının listesini görüntülemek için grep with history komutunu kullanın.

Örneğin, aşağıdaki komut “2022-12-20” tarihinde yürütülen tüm komutların listesini gösterecektir.

$ history | grep 2022-12-20

Output:

Birden Çok Tarih için Geçmiş Kayıtlarını Listeleme

Aşağıdaki komut, “2022-12-19” ve “2022-12-20” tarihlerinde yürütülen tüm komutların listesini gösterecektir.

$ history | grep -E "2022-12-19|2022-12-20"

Çıktı:

Tarih Kayıtlarının Bir Tarih Aralığına Göre Listelenmesi

Aşağıdaki komut, “2022-12-19” ve “2022-12-20” tarihleri arasında yürütülen komut aralığını görüntülemek için awk komutunu kullanır.

$ history | awk '{if($2>="2022-12-19" && $2<="2022-12-20") print $0}'

Çıktı:

Geçmiş Kayıtlarının Belirli Bir Tarih İçin Zaman Aralığına Göre Listelenmesi

Aşağıdaki komut, “14-27-47” tarihinde “16:28:04:2022” ile “12:20:20” arasında yürütülen komut aralığını gösterecektir.

$ history | awk '{if($2="2022-12-20" && $3>="14:27:47" && $3<="16:28:04") print $0}'

Çıktı:

 

 

Yazının orijinalini buradan okuyabilirsiniz.

Hüseyin GÜÇ

Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım. Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum. Son 6 yıldır  sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum. Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.