Odpowiedzi w linku podanym z witryny Superużytkowników niekoniecznie powinny być postrzegane jako „obejścia” history
domyślnego zachowania polecenia. Powłoka bash ma trochę rozsądnego, domyślnego zachowania.
Gorąco polecam lekturę Jak mogę uniknąć utraty historii? dla wyjaśnienia, co robią te modyfikacje history
. Ponadto istnieją pewne uzasadnione obawy, aby wiedzieć, dlaczego nie jest to domyślne zachowanie history
polecenia.
wydajność - Ponieważ zapisujesz każde polecenie z każdego okna history -a
, .bash_history
plik może się rozrosnąć i wymagać większych zasobów do załadowania powłoki bash. Może to skutkować dłuższym czasem uruchamiania (w przypadku sesji terminalowych, a nie całego uruchamiania systemu, per se.).
organizacja - (z powyższego artykułu) „polecenia historii jednoczesnych powłok interaktywnych (dla danego użytkownika) zostaną ze sobą powiązane. Dlatego historia nie jest gwarantowaną sekwencyjną listą poleceń, ponieważ zostały one wykonane w jednej powłoce”.
Jeśli obawiasz się o dalsze zabezpieczenie powłoki bash i. bash_history
plik poprzez inspekcję, spójrz na ten artykuł: Jak mogę zapisać historię lub „zabezpieczyć” bash przed usunięciem historii?
Czasami (np. Niestabilny system lub awaria zasilania) uznaję poniższe polecenia za przydatne.
Dodaj następujące wiersze do ~/.bashrc
pliku:
unset HISTFILESIZE
HISTSIZE=3000
PROMPT_COMMAND="history -a"
export HISTSIZE PROMPT_COMMAND
shopt -s histappend
Upewnij się, że .bashrc
plik źródłowy używasz poleceniasource ~/.bashrc