OS X El Capitan (10.11 Beta) is Bash sessions (Terminal sessions)'da görünüşte yeni bir özellik. Şimdi tarih dosyaları olan bir ~/.bash_sessions
dizini var ve benim HISTFILE
ve HISTIGNORE
envar'lar geçersiz kılılıyor. Tüm bu işlevselliği nasıl devre dışı bırakabilirim?OS X El Capitan'daki Bash oturumlarını nasıl devre dışı bırakabilirim?
cevap
El ile yeni bir Bash oturumu başlatırsanız (örn. bash -xl
), oturum açmada neyin çalıştığını görebilirsiniz.
Sen çıktıda aşağıdaki satırı görürsünüz:
....
+++ '[' '!' -e /Users/username/.bash_sessions_disable ']'
Bu işlevi devre dışı bırakmak için ev dizininde bir .bash_sessions_disable
dosyası oluşturabilirsiniz.
Daha öncekinden daha fazla geçmişe erişmeyi seviyorum, ancak kendi başına herhangi bir sınırlama getiriyor mu? 10.11'i yüklediğinden beri her Terminal için iki veya üç dosyam var gibi görünüyor. Ayda sadece iki megabayt, ancak yine de .... – WGroleau
@WGroleau: Bu özellik tarihin miktarı ile ilgili değil, her terminal oturumu için ayrı komut geçmişlerini depolamakla ilgili, böylece Özgeçmiş ile terminalleri geri yüklerseniz tarihler ayrı kalır - başlangıçta onları oluşturduğunuzda oldukları gibi. Normal "HISTSIZE" ve "HISTFILESIZE" kabuk değişkenleri hala geçerlidir. Aslında, bunlardan birini veya her ikisini de daha büyük yapmanızı öneririz, çünkü her oturum da geçmişini global '~/.bash_history' dosyasına ekler, böylece geçmişinizin tümü yeni terminallerde kullanılabilir. Daha fazla ayrıntı için '/ etc/bashrc_Apple_Terminal' deki yorumlara bakın. –
@WGroleau: Ayrıca, günde bir kez olmak üzere iki haftadan eski oturum dosyalarını da otomatik olarak siler. –
Bu davranış, /etc/bashrc_Apple_Terminal
numaralı telefondan tanımlanmıştır. Ne yaptığını ve nasıl özelleştirileceğini açıklayan dokümantasyon yorumları içerir.
burada açıklandığı gibi, sizin ~/.bashrc
komut SHELL_SESSION_HISTORY=0
ayarlayarak başına terminal oturumu komut geçmişi özelliğini devre dışı bırakabilirsiniz:
Tek bir geçmişi bu davranışı devre dışı bırakmak ve paylaşabilir 0'a SHELL_SESSION_HISTORY ayarlayarak tarafından çalışan kabuklar arasında yeni komutları paylaşmak isteyen her bir ortak kullanıcı özelleştirmesi vardır ve her bir komutta geçmişi manipüle ederler ve genellikle 'shopt -s histappend'; Bu nedenle, eğer histappend kabuk seçeneği etkinleştirilmişse, oturum başına geçmiş varsayılan olarak devre dışıdır. Sen açıkça, sen
~/.bash_sessions_disable
oluşturarak tüm oturum durumu restorasyon mekanizmasını devre dışı bırakabilir rağmen, bu oturum başına komut geçmişi özelliğini devre dışı bırakmak için sadece gerekli olmadığına 1.
Not SHELL_SESSION_HISTORY ayarlayarak aktive edebilir ve tavsiye edilmez.
Güzel Bul! '/ Etc/bashrc_Apple_Terminal' üzerinden bakmak bana, özelliği tamamen engellemenin tek yolunun' '$ HOME/.bash_sessions_disable'' (yani, bu dosya olmadan yine de oturum dizini oluşturacak) olarak ayarlanacağına inanmamı sağlar. – Whymarrh
@Whymarrh Cevabımın bir kısmını mı özledin? Bu dosyanın oturum durumu mekanizmasını devre dışı bıraktığını söyledim, ancak yapmak istediğiniz tek şey, oturum başına kabuk komut geçmişini devre dışı bırakmaksa, bu fazla mesai. –
Son satırın yanlış olduğunu fark ettim, evet. Bunun için üzgünüm. – Whymarrh
Özetle, bunun Apple'ın Resume özelliği ile ilgisi vardır. Bu özellik etkinleştirildiğinde, bir uygulamayı kapattığınızda veya yeniden başlattığınızda, uygulama açıldığında, daha önce açılmış olan pencereleri açar.
$HOME/.bash_sessions_disable
zorunlulukSystem Preferences/General/Close Windows when quitting an app
kontrol edilmemelidir mevcut olmayabilir: Terminal ile ilgili olaraküç şey bunun olması için yerde olması gerekir.
- Yeniden başlatırken,
Reopen windows
'u seçin.
Terminali yeniden açtığınızda, aynı ekran konumlarında daha önce sahip olduğunuz pencereleri ve sekmeleri yeniden açar. Ayrıca, Terminal/Preferences/your-window-type/Windows/Resume/Restore-text-when-reopening-windows
'u işaretlediyseniz, her ekranda metni geri yükler.Aşağıdaki koşullar
ve bu OP'ın soruya özellikle ilgilidir, her pencerede/sekmede tarihini geri yükler tutarsan:
SHELL_SESSION_HISTORY
ayarlanmazsa veya değil 1shopt histappend
ayarlı olduğuSHELL_SESSION_HISTORY
açıkçaolarak ayarlanırsaHISTTIMEFORMAT
ayarlı değil set, son iki gereksinim geçersiz kılınır, yani shopt histappend
veya HISTTIMEFORMAT
ayarlanmış olabilir. Ayrıca, HISTSIZE
ve HISTFILESIZE
değişkenlerine de dikkat edilmesi gerekmektedir. Çok büyük veya çok küçük olmamalılar ve bazıları Apple'ın varsayılan değerlerini almaları için onları üzümsüz bırakmalarını tavsiye ediyorlar.
- 1. Ckeditor'daki kayıt düğmesini nasıl devre dışı bırakabilirim?
- 2. Windows anahtarı C# nasıl devre dışı bırakabilirim?
- 3. Tüm setTimeout olaylarını nasıl devre dışı bırakabilirim?
- 4. Tomcat önbelleğe almayı nasıl devre dışı bırakabilirim?
- 5. GCC'yi kullanırken vektörleştirmeyi nasıl devre dışı bırakabilirim?
- 6. Çizik önizleme penceresini nasıl devre dışı bırakabilirim?
- 7. Linux'ta Nagle'in algoritmasını nasıl devre dışı bırakabilirim?
- 8. _moz_resizing özelliğini nasıl devre dışı bırakabilirim?
- 9. UITextField macunu nasıl devre dışı bırakabilirim?
- 10. XIA8'de Castalia'yı nasıl devre dışı bırakabilirim?
- 11. Emacs'im beyaz boşluk bırakıyor. Bu davranışı nasıl devre dışı bırakabilirim?
- 12. taş yüklemek rmagick OS X El Capitan
- 13. Pandalar verilerini çizerken etiketi nasıl devre dışı bırakabilirim?
- 14. OS X El Capitan'da bir OSD El Capitan uygulamasında
- 15. Klavyede Geri Dönüş Tuşunu el ile nasıl etkinleştirebilir veya devre dışı bırakabilirim?
- 16. Onay kutumu AngularJS girişinden nasıl devre dışı bırakabilirim?
- 17. Emacs'ta x yapıştırma nasıl devre dışı bırakılır
- 18. Belirli klasörlerde htaccess kullanarak auto_prepend'i nasıl devre dışı bırakabilirim?
- 19. jQuery-UI kaydırıcısı - klavye girişini nasıl devre dışı bırakabilirim?
- 20. sbtassembly kullanarak sbt'de jar sıkıştırmasını nasıl devre dışı bırakabilirim?
- 21. SQL Server 2000'deki girişleri nasıl devre dışı bırakabilirim?
- 22. "TWebbrowser" ile ilgili javascript hatalarını nasıl devre dışı bırakabilirim?
- 23. Tüm grup/dosya klasörü için ARC'yi nasıl devre dışı bırakabilirim?
- 24. eonasdan-datetimepicker'daki "ücretsiz" kullanıcı girişini nasıl devre dışı bırakabilirim?
- 25. Drupal modülünü programlı olarak nasıl devre dışı bırakabilirim?
- 26. Ekranda aşağı çekilirken Bildirim Merkezi'nin görüntüsünü nasıl devre dışı bırakabilirim?
- 27. Meteorda canlı yeniden yüklemeyi nasıl devre dışı bırakabilirim?
- 28. Tepki yerel gezgini geri döndürmeyi nasıl devre dışı bırakabilirim
- 29. EdmMetadata tablosuna karşı sorgular yayınlamayı nasıl devre dışı bırakabilirim?
- 30. Knockout kullanarak tıklama olayını nasıl devre dışı bırakabilirim?
“…… HISTIGNORE envarlar geçersiz kılılıyor.” Emin misiniz? '/ etc/bashrc_Apple_Terminal'' HISTIGNORE' değiştirmez (hiç referans alınmamıştır). –
* Eğer 'heygeci' kabuk seçeneği etkinleştirilmişse, oturum başına geçmiş varsayılan olarak devre dışı bırakılmıştır * – yckart