Sonsuza dek tarih boyutunu nasıl değiştirebilirim?


69

Ubuntu'da varsayılan tarihçe boyutu 1000'dir, ancak çok küçük. Onu 10000 olarak değiştirmek istiyorum.

export HISTSIZE=10000
export HISEFILESIZE=10000

için .profile ve 'kaynak' it

source .profile

sonra koşarım

echo $HISTSIZE
echo $HISTFILESIZE

Her ikisi için de 1000 görüntülendi, ancak bilgisayarımı yeniden başlattım ve 'varsayılan' oldu. Neden çalışmıyor


Burada soruda bir yazım hatası var: export HISEFILESIZE=10000( .profileEcho'ların çalışıp çalışmadığını bilmiyor olmanıza rağmen ). Sadece birisinin burada ona HISTFILESIZE
Leo

Yanıtlar:


71

Aynısını denedim, sadece sinsi Ubuntu'nun bu değişkenleri ~/.bashrcvarsayılan olarak ayarladığını bulmak için giriş yaptım, sadece ~/.profilebir terminal penceresi açmak gibi oturum açma kabukları yerine çalıştırılıyordu . Bu satırları değiştirmek ~/.bashrcbenim için düzeltti:

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

6
onun dosyası KB cinsinden mi?
Patoshi シ ト シ

12
@duckx Hayır, HISTFILESIZE, tarih dosyasında saklanan satır sayısında, HISTSIZE ise her kabuk işleminde saklanan ve ulaşılabilen satır sayısıdır (ve sonra HISTFILESIZE e kaydedilir). Değeri (veya sayı olmayan veya negatif) hiçbir sınırlamanın oluşmadığına dikkat edin.
vaab

2
Bu, bazı nedenlerden dolayı XFCE Terminali'nde
çalışmıyor

1
@MichalPrzybylowicz: /etc/bash.bashrceğer sizin için kabul edilebilirse, yazarak düzeltilebilir . Aşağıya bakınız. (Belki de o da eksikti export)
serv-inc

43

Bash Referans Kılavuzundan :

HISTSIZE 
    The maximum number of commands to remember on the history list.

    If the value is 0, 
       **commands are not saved** in the history list. 

    Numeric values less than zero result in 
       every command being saved on the history list (there is no limit). 

Bu yüzden sonsuz bir tarih listesi için:
HISTSIZE = (bazı sayı 0'dan az )

HISTFILESIZE 
    The maximum number of lines contained in the history file. 

    When this variable is assigned a value, 
        the history file is truncated, if necessary, 
        to contain no more than that number of lines 
        by removing the oldest entries. 

        The history file is also truncated to this size after 
        writing it when a shell exits. 

    If the value is 0, 
        **the history file is truncated to zero size.** 

    Non-numeric values and numeric values less than zero 
        inhibit truncation. 

Bu yüzden sonsuz bir .bash_history geçmiş dosyası için şunu yapın:
HISTFILESIZE = (bir sayı 0'dan az )


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.