Jak włączyć historię basha tylko do buforowania poleceń, które są rzeczywiście na ścieżce?


2

Włączenie historii basha jest zagrożeniem bezpieczeństwa, ponieważ po wprowadzeniu hasła do basha hasło zostanie zapisane w historii basha. Aby temu zapobiec, dobrym rozwiązaniem byłoby skonfigurowanie historii basha tak, aby nie zapisywała poleceń, których nie znaleziono w $ PATH.

Do tej pory tak ustawiam zachowanie historii

# Dont Save duplicated history lines
HISTCONTROL=irgnoredups:erasedups
HISTTIMEFORMAT="%F-%M-%S --> "
HISTIGNORE="su":"su *":"sudo *":"sudo":"his":"his *":"history":"history *":"halt":"reboot":"apt-get *":"apt-cache *":"aptitude *":"dpkg *"

# need a bigger history 
# uncomment these lines
#HISTSIZE=1000000
#HISTFILESIZE=1000000

Istnieje sposób na skonfigurowanie historii, aby przechowywała tylko polecenia znajdujące się na ścieżce?

Odpowiedzi:


0

Przypuszczam, że można umieścić wszystkie polecenia w zmiennej.

HISTIGNORE=${HISTIGNORE}:`find ${PATH//:/ } -printf %f: |sed s/:$//`

umm .. to przeciwieństwo tego, czego chcesz, prawda?
— Ярослав Рахматуллин

Tak to jest. ale myślę, że nie da się tego rozwiązać tak łatwo. wydaje się, że potrzebuję procesu tła lub czegoś, co sprawdza, czy polecenie jest w $ PATH, czy nie. mimo wszystko dziękuję
— l1zard
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.