Bisakah Anda berbagi kebijakan menggunakan HISTIGNORE di bash?

26

Saya membaca halaman manual untuk bash di pesawat dan saya menemukan variabel HISTIGNORE. Untuk mengujinya, saya segera mengedit .profile saya untuk mendefinisikan variabel ini:

ekspor HISTIGNORE = ls

Saya mengujinya dan ini bagus! Itu tidak termasuk perintah 'ls' biasa dari sejarah saya tanpa mengecualikan perintah yang lebih menarik dengan jalur yang panjang, tetapi setelah baru-baru ini menuai banyak hikmah dari SU, saya ingin tahu apa perintah yang mungkin direkomendasikan oleh pengguna super atau pelajaran lain yang dipelajari.

Apa yang bisa Anda bagikan tentang menggunakan variabel HISTIGNORE di bash?

Sage
sumber

Jawaban:

29

Aku mengabaikan lstanpa perintah, bg, fg, exit, pwd, clear, mountdan umount:

Jika Anda memasukkan ini ke dalam HISTIGNOREstring, Anda dapat menekan apa pun yang Anda inginkan dengan menambahkan spasi di bagian depan perintah:

"[ \t]*" 

Ini milik saya HISTIGNORE:

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

Saya telah mengecualikan beberapa hal lain yang saya miliki di sana yang merupakan perintah berulang yang unik untuk server saya. Apa pun yang Anda lakukan yang sederhana adalah hal yang baik untuk dikecualikan.

Saya memiliki hal-hal lain yang saya lupa tambahkan tetapi saya jauh dari kotak Linux saya jadi saya kehabisan memori.

Stanley Williams
sumber
6
Jika nilai HISTCONTROLmenyertakan "ignorespace" atau "ignoreboth", perintah yang dimulai dengan spasi dihilangkan dari sejarah. Jika nilainya mencakup "ign dups" atau "ignoreboth", itu sama dengan "&" di HISTIGNORE.
Dijeda sampai pemberitahuan lebih lanjut.
Bagi saya itu juga terbukti berguna untuk membuat histignore historyperintah itu sendiri.
con-f-use
2
menggunakan "[ \t]*"perintah abaikan yang dimulai dengan spasi atau t. Anda inginHISTIGNORE=$'&:ls:[bf]g:exit:pwd:clear:mount:umount:[ \t]*'
Gregory Pakosz
14

Jangan menyimpan perintah karakter satu dan dua sepele pada daftar riwayat:

HISTIGNORE='?:??'

Jika extglobopsi ini diaktifkan, Anda juga dapat menggunakan pola yang diperluas, mis

HISTIGNORE='a*( )'
Eugene Yarmash
sumber