HISTIGNORE bash ile ilgili bilgeliği paylaşır mısın?


25

Uçakta bash için man sayfaları okuyordum ve HISTIGNORE değişkenine rastladım. Denemek için, bu değişkeni tanımlamak için .profile dosyasını hemen düzenledim:

HISTIGNORE dışa aktar = ls

Test ettim ve bu harika! Uzun yollarla daha ilginç komutlar dışlamadan, tarihimdeki düz 'l' komutları hariç tutuyor, ancak yakın zamanda SU'dan çok fazla bilgelik harcadım, diğer komutların ne önerebileceğini veya başka derslerin öğrenilebileceğini öğrenmeye hevesliyim.

HISTIGNORE değişkenini bash'de kullanma hakkında neler paylaşabilirsiniz?

Yanıtlar:


28

Ben görmezden ls, komutlar olmaksızın bg, fg, exit, pwd, clear, mountve umount:

Bunu HISTIGNOREdizginize eklerseniz, komutun önüne bir boşluk ekleyerek istediğiniz herhangi bir şeyi gizleyebilirsiniz:

"[ \t]*" 

Bu benim HISTIGNORE:

HISTIGNORE="&:ls:[bf]g:exit:pwd:clear:mount:umount:[ \t]*"

Sunucum için benzersiz olan ve tekrarlayan komutlar olan bazı şeyleri dışladım. Yaptığınız her şey basit, dışlanması iyi bir şeydir.

Eklemeyi unuttuğum başka şeyler var ama Linux kutumdan kilometrelerce uzaktayım bu yüzden bellekten ayrılıyorum.


5
Değeri HISTCONTROL"ignorepace" veya "ignoreboth" içeriyorsa, boşlukla başlayan komutlar tarihten çıkarılır. Değer "yoksaymaları" veya "yoksaymayı" içeriyorsa, içinde "&" ile aynıdır HISTIGNORE.
Dennis Williamson,

Bana göre, aynı zamanda emrin historykendisinin histignore edilmesi de faydalı oldu .
con-f-use

1
kullanarak "[ \t]*"yoksaydıklarınız bir boşluk veya ile başlayan komutu t. İstediğinizHISTIGNORE=$'&:ls:[bf]g:exit:pwd:clear:mount:umount:[ \t]*'
Gregory Pakosz 22:15

13

Önemsiz bir ve iki karakter komutunu geçmiş listesine kaydetmeyin:

HISTIGNORE='?:??'

Eğer extglobseçeneği etkinleştirildiğinde, ayrıca örneğin genişletilmiş desenleri kullanabilirsiniz

HISTIGNORE='a*( )'
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.