Komut geçmişi, daha önce terminal içinde çalıştırdığınız komutları görüntülemenize yardımcı olur. Linux'ta komut geçmişini şu şekilde yönetebilirsiniz.
Linux'ta yazdığınız her komut geçmiş dosyasına kaydedilir. history komutu, bu komutları yeniden yazmak zorunda kalmadan görüntülemenizi ve yeniden kullanmanızı sağlar. kullanarak geçmiş listesinde gezinebilirsiniz. Yukarı Ve Aşağı anahtarlar. Ancak geçmişten bazı komutları silmek veya geçmiş kaydetme özelliğini kalıcı olarak devre dışı bırakmak istediğiniz zamanlar olabilir.
Neyse ki Linux, geçici olarak devre dışı bırakma veya kalıcı olarak, tüm geçmişi silmek veya belirli komutların geçmişe kaydedilmesini engellemek liste. Nasıl olduğunu görelim.
Linux'ta Tüm Komut Geçmişini Sil
tamamını silmek için Linux'ta komut geçmişi en baştan, history komutunu aşağıdakilerle birlikte kullanın: -C seçenek:
tarih -c
Bu, daha önce çalıştırdığınız komutların tüm geçmişini siler.
Geçmişten Belirli Komutları Sil
Bazen tüm geçmişi silmek yerine belirli komutları kaldırmak isteyebilirsiniz. Bu durumda, geçmiş listesinde söz konusu komutla ilişkili numarayı belirlemeniz gerekir. Bunu basitçe yazarak yapabilirsiniz:
tarih
Veya istenen bilgileri daha kolay bulmak için geçmiş çıktısını grep'e aktarabilirsiniz:
tarih | grep ifconfig
Komut numarasını bulduktan sonra, tarih komutunu kullanarak onu silebilirsiniz. -D seçenek ve ardından komut numarası:
tarih -d
Bir Komutu Geçmişe Dahil Etmeden Yürütme
Geçmişe kaydedilmeden bir komutu yürütmek için, basitçe bir komut ekleyin. Uzay komuttan önce. Ancak, bu özelliğin çalışması için, HİST KONTROLÜ ortam değişkeni yok sayma alanı aşağıdaki komutu kullanarak:
dışa aktarma HISTCONTROL=boşluğu yoksay
Bu değişiklik, yeniden başlatmanın ardından devam etmez. Kalıcı hale getirmek için, ekleyin .bashrc aşağıdaki komutu kullanarak dosya:
echo 'HISTCONTROL=ignorespace' >> ~/.bashrc
Bash, bu özelliği etkinleştirerek, geçmiş dosyasında boşluk karakteriyle başlayan komutları kaydetmeyecektir.
Örneğin, aşağıdaki komut kabuk tarafından kaydedilmeyecektir:
[boşluk] yankı 'merhaba, bu ilk satır'
Aynı komutu boşluk bırakmadan çalıştırırsanız, Bash bunu geçmişe kaydeder:
yankı 'merhaba, bu ilk satır'
Benzer şekilde, Bash'in art arda yinelenen komutları geçmişten kaldırmasına da izin verebilirsiniz:
echo 'HISTCONTROL=yoksayılanlar' >> ~/.bashrc
Bu özellik, ardışık kopyaları geçmiş listesinde yalnızca bir kez saklar.
Linux'ta Komut Geçmişini Etkinleştirme/Devre Dışı Bırakma
Önceki yöntem, kabuğun geçmişteki komutları günlüğe kaydetmesini engelleyebilse de, çok sayıda komutla uğraşırken pratik olmayabilir.
Her komuttan önce bir boşluk eklemek monoton ve külfetli hale gelebilir. Böyle bir senaryoda, aşağıdaki komutu yürüterek kabuk geçmişini geçici olarak devre dışı bırakabilirsiniz:
+o geçmişini ayarla
Tekrar açmak için aşağıdaki komutu kullanın:
-o geçmişini ayarla
Linux komut geçmişini kalıcı olarak devre dışı bırakmak için şunu kullanın:
echo '+o geçmişini ayarla' >> ~/.bashrc
Geçmişe Kaydedilmekten Bazı Komutları Yoksay
Geçmiş listesini karıştırabilecekleri ve gezinmeyi zorlaştırabilecekleri için hariç tutmak istediğiniz bazı komutlar olabilir. Yaygın örneklerden bazıları pwd, ls, man, cat ve cd komutu çünkü tekrarlayıcı ve gereksiz olabilir.
Kullanmak HISTIGNORE ortam değişkeni, hangi komutların geçmiş listesine eklenmeyeceğini kontrol edebilirsiniz. Örneğin, history, pwd ve cat gibi belirli komutları geçmiş listesinden çıkarmak için, bunları iki nokta üst üste kullanarak ayırın ve aşağıdaki gibi çift tırnak içine alın:
export HISTIGNORE="geçmiş: pwd: cat"
Değişikliği kalıcı yapmak için komutu şuraya ekleyin: .bashrc kullanarak dosya:
echo 'HISTIGNORE="geçmiş: pwd: cat"' >> .bashrc
Linux'ta Bash Komut Geçmişinizi Kontrol Edin
Linux, komut satırı geçmişini yönetmek üzerinde kapsamlı kontrol sunarak, kullanıcıların hangi komutların kaydedileceğini belirlemesine izin verir. geçmiş, belirli komutları geçmişten silin, geçmişi geçici olarak etkinleştirin veya devre dışı bırakın, hatta tümünü silin tarih.
Bu, yalnızca kullanıcının gizliliğini korumaya yardımcı olmakla kalmaz, aynı zamanda alakasız veya tekrarlayan komutların Bash geçmişini karıştırmasını da önler.
Komut satırı geçmişine erişmenin daha da iyi bir yolu, Linux'ta varsayılan ters i-aramanın yerine sinir ağıyla çalışan McFly'ı kullanmaktır.