Bazı bash örnekleri, önceki bir komutu yeniden kullandığınızda ve düzenlediğinizde komut geçmişini değiştirir, diğerleri görünüşte değişmez. Arama yapıyordum ve aradım ancak geçmişteki komutların yeniden kullanıldıklarında ve düzenlendiklerinde değiştirilmelerinin nasıl önleneceğini söyleyen hiçbir şey bulamıyorum.
Orada gibi sorular bu bir , ama bu tarih düzenlenmekte olan ile başa çıkmak için nasıl söylemek gibi görünüyor. Son zamanlarda bir komutu yeniden kullandığınızda geçmişi düzenleyen bir bash örneğiyle karşılaştım - kullandığım önceki tüm bash kabukları (fark ettiğim kadarıyla) yeniden kullandığınızda geçmişi değiştirmek için yapılandırılmamış ve bir komutu düzenleyin. (Belki de son 15 yıldır kabuk geçmişime yeterince dikkat etmiyordum ...)
Bu muhtemelen en iyi soru: bash'a ASLA geçmişi değiştirmesini söyleyemem - eğer öyleyse, nasıl?
set revert-all-at-newline on
sorudaki sorununuzu çözmüyor mu? Sorunun nasıl yeniden üretileceğini gösterebilir misiniz? İstediğinizle zsh
daha satır içi bir davranış için de kullanabileceğinizi unutmayın .
history -p
yeniden kullanmak istediğim her komut için yapmam gereken bir şey var - doğru mu? Eğer öyleyse, aradığım şey tam olarak bu değil. Bahsettiğim gibi, bir komut yeniden kullanıldığında ve düzenlendiğinde geçmişi değiştirmeyen bash örneklerini kullandım.
revert-all-at-newline
tam olarak ihtiyacım olan şey sanmıyorum . Bir komutu düzenler ve iptal etmek için CTRL-C tuşlarına basarsam, bunun geçmişi etkilemesini de istemiyorum. Daha önce yapılandırmak bash zorunda kalmamıştım değil ben taze bir diğerinde bazen bir şekilde davranır yüklemek ve neden bazen şekilde karıştı nedenlerinden biri de bu kadar değiştirmek geçmişi. Bu arada, komutun yeniden kullanılmasına ilişkin geçmişi düzenlemeyen bir örnekte, 'kapalı' olarak ayarlanmış bir bind -V | grep revert
işaret revert-all-at-newline
.
bash
. Her şey readline ile ilgili. readline
Kütüphanenin farklı uygulamaları vardır ve ayrıca kendi ayarları (bir sürü) ve kendi yapılandırma dosyası vardır. Bunun bir ayar mı yoksa basitçe bir uygulama farkı mı olduğundan emin değilim, ancak bash yerine readline ile ilgili dokümanlarda arama yapmalısınız.
history -p
Geçmiş dosyasını etkilemeden geçmiş genişletmeleri yapmak için kullanabilirsiniz . Sen yapabilirsinhistory -s
aynı ve yürütme olmadan tarihine ekleme yapmak.HISTIGNORE='start of a command I never want in history.*:command2.*'
Belirli komutları geçmişin dışında tutmak için yapabilirsiniz .