harmonogram poleceń tworzenia kopii zapasowej historii każdego restartu


0

jak zrobić historię poleceń tworzenia kopii zapasowej harmonogramu przy każdym ponownym uruchomieniu?
próbuję z crontab -e
@reboot history > backup.txt

i ponownie uruchamiam komputer PC w katalogu znajduje się plik backup.txt, ale plik jest pusty, nie ma wyników historii poleceń

Odpowiedzi:


1

Dziękujemy za odpowiedź
Zanim zobaczę odpowiedź, znalazłem rozwiązanie

crontab -e
@reboot cp /home/username/.bash_history /home/username/History_Command.txt

I to działa


Radzę to sprawdzić przed zastąpieniem pliku historii, aby uniknąć tworzenia kopii zapasowej obciętego pliku historii, jeśli coś pójdzie nie tak. (dostosuj 10000 do bieżącej łącznej liczby wierszy, a także <nazwa użytkownika> i ścieżka do historii historii pls_check_bash_): SHELL=/bin/bash @reboot if [[ $(wc -l </home/<username>/.bash_history) -ge 10000 ]]; then cp /home/<username>/.bash_history /home/<username>/.bash_history_reboot_bk; else echo $(wc -l </home/<username>/.bash_history) > /home/<username>/Downloads/pls_check_bash_history; fi
林果 皞

0

Ponieważ historia jest tylko plikiem, możesz go po prostu skopiować:

SHELL=/bin/sh
PATH=/usr/bin:/bin:/usr/sbin:/sbin 
@reboot cp $HOME/.bash_history $HOME/backup.txt 2>&1

0

Bash historynie działa w ten sposób. Przeczytaj ten link, aby uzyskać więcej informacji.

Bezpośredni cytat z linku powyżej:

Bash utrzymuje listę poleceń wewnętrznie w pamięci podczas działania.

Ponieważ Bash nie uruchamia się po ponownym uruchomieniu, nie otrzymujesz żadnych danych wyjściowych.

Co więcej, cronnie używa tego samego, PATHco twoja powłoka Bash. Więcej na ten temat tutaj .

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.