Jak wykonać kopię zapasową historii terminali Linux

Jak wykonać kopię zapasową historii terminali Linux

Terminal Linux ma funkcję „historii”. Dzięki tej funkcji każda wprowadzona operacja polecenia zostanie zarchiwizowana na później. Ponieważ wszystkie polecenia terminala są zapisywane w „historii”, ważne jest, aby zachować ich kopię zapasową na przechowanie.

W tym przewodniku pokażemy, jak wykonać kopię zapasową historii terminali Linux i jak przywrócić kopie zapasowe. Otwórz więc swój ulubiony emulator terminala Linux i podążaj dalej!

Gdzie jest przechowywana historia terminala Linux?

Terminal Linux przechowuje swoją historię w pliku. Ten plik nosi nazwę „.bash_history”. Każdy może go edytować i jest przechowywany w katalogu domowym. Ponieważ plik historii terminala dla systemu Linux jest przechowywany w katalogu użytkownika, każdy użytkownik w systemie ma plik.

Specjalne uprawnienia nie chronią tych plików historii, a każdy użytkownik systemu może przejrzeć historię innego za pomocą prostego polecenia. Na przykład, jeśli chcę rzucić okiem na historię terminala/wiersza poleceń nazwy użytkownika „użytkownik” w moim systemie Linux, zrobię:

Jak wykonać kopię zapasową historii terminali Linux

kot /home/user/.bash_history

Użytkownicy mogą również przeglądać historię bieżącego użytkownika, do którego są zalogowani, w powłoce terminala Linux, po prostu wykonując polecenie „historia”.

historia

Co najlepsze, ponieważ „historia” to tylko plik, można ją przeszukiwać jak zwykły plik tekstowy za pomocą funkcji grep. Na przykład, aby znaleźć wystąpienia „git clone” w nazwie użytkownika za pomocą poniższego polecenia.

kot /home/user/.bash_history | grep 'git klon'

Działa również jako aktualnie zalogowany użytkownik z poleceniem „historia”.

historia | grep 'wyszukiwane hasło'

Zapisz historię terminala w kopii zapasowej

W poprzedniej części tego przewodnika mówiłem o tym, jak „historia” dla terminala Linux jest po prostu starannie ukrytym plikiem tekstowym, który zawiera wszystkie polecenia wprowadzone przez użytkownika. Cóż, ponieważ jest to tylko plik, oznacza to, że bardzo łatwo jest wykonać kopię zapasową w celu przechowania.

Aby utworzyć kopię zapasową, użyj  polecenia cat  . Czemu? Dzięki  cat możesz wyświetlić cały plik tekstowy bezpośrednio w terminalu. Możemy użyć tego polecenia w połączeniu z symbolem „>”, aby przekierować oglądane dane wyjściowe do pliku kopii zapasowej.

Na przykład, aby wykonać kopię zapasową bieżącej historii, uruchom polecenie cat na „~/.bash_history” i zapisz ją w pliku z etykietą „history_backup”.

Jak wykonać kopię zapasową historii terminali Linux

kot ~/.bash_history > history_backup

Możesz także uruchomić polecenie historii w połączeniu z „>” i zapisać je w ten sposób.

historia > history_backup

Na koniec można wykonać kopię zapasową historii wiersza poleceń/terminalu innego niezalogowanego użytkownika, uruchamiając poniższe polecenie.

Uwaga: pamiętaj, aby zmienić „nazwę użytkownika” na użytkownika, od którego chcesz zapisywać historię.

kot /home/username/.bash_history > history_backup

Tworzenie kopii zapasowych tylko niektórych elementów historii

Możesz chcieć wykonać kopię zapasową tylko określonych poleceń w historii terminala Linux. Sposobem na to jest przejrzenie pliku historii i połączenie go z poleceniem grep , które odfiltruje określone słowa kluczowe.

Na przykład, aby wykonać kopię zapasową tylko poleceń w historii terminala Linux, które zawierają polecenia git clone lub git , możesz uruchomić poniższą operację.

Uwaga: w tych przykładach używamy „>>” zamiast „>”. Powodem „>>” jest to, że nie zastąpi on zawartości kopii zapasowej pliku historii i można go wielokrotnie uruchamiać w celu dodania do kopii zapasowej.

kot ~/.bash_history | grep 'git' >> history_backup

Lub

kot /home/nazwa_użytkownika/.bash_history | grep 'git' >> history_backup

Filtrowanie za pomocą grep można również zastosować do polecenia historii , w ten sposób.

historia | grep 'git' >> history_backup

Aby utworzyć kopię zapasową niektórych słów kluczowych z pliku historii, zastąp „git” w powyższych przykładach dowolnymi poleceniami, których kopię zapasową chcesz utworzyć. Zachęcamy do ponownego uruchamiania tego polecenia tak często, jak to konieczne.

Jak przywrócić kopię zapasową historii?

Przywrócenie kopii zapasowej historii jest tak proste, jak usunięcie oryginalnego pliku i umieszczenie kopii zapasowej na swoim miejscu. Aby usunąć oryginalny plik historii, użyj polecenia rm w oknie terminala, aby usunąć „.bash_history”.

rm ~/.bash_history

Po usunięciu oryginalnego pliku historii z folderu domowego użytkownika, w którym chcesz przywrócić historię, użyj polecenia mv, aby zmienić nazwę „history_backup” na „.bash_history”.

mv history_backup ~/.bash_history

Teraz, gdy nowy plik historii jest na swoim miejscu, uruchom history -rw polecenie, aby przeładować funkcję historii terminala.

historia -rw

Będziesz wtedy mógł zobaczyć historię swojego terminala za pomocą:

historia

Przywróć kopie zapasowe dla innych użytkowników

Chcesz przywrócić kopie zapasowe historii od innych użytkowników w systemie? Aby to zrobić, zacznij od zalogowania się do swojego użytkownika za pomocą polecenia su .

su nazwa użytkownika

Po zalogowaniu się użytkownika usuń bieżący plik historii znajdujący się w katalogu domowym użytkownika (~).

rm ~/.bash_history

Stamtąd zmień nazwę pliku kopii zapasowej historii na nowy plik „.bash_history” w katalogu użytkownika.

mv /path/to/backup/file/history-backup ~/.bash_history

Zapisz zmiany za pomocą:

historia -rw

Po zakończeniu uruchom historię, aby wyświetlić przywrócone polecenia w oknie terminala.


Ulepsz schowek Gnome Shell za pomocą Pano

Ulepsz schowek Gnome Shell za pomocą Pano

Spójrzmy prawdzie w oczy, domyślny schowek Gnome Shell nie jest zbyt dobry. Zainstaluj Pano, aby ulepszyć korzystanie ze schowka!

Jak zainstalować DaVinci Resolve 17 w systemie Linux

Jak zainstalować DaVinci Resolve 17 w systemie Linux

Czy potrzebujesz świetnego nieliniowego edytora wideo dla swojego systemu Linux? Spraw, aby Davinci Resolve 17 działał z tym przewodnikiem!

Jak pobrać tapety na pulpit systemu Linux za pomocą programu do pobierania tapet

Jak pobrać tapety na pulpit systemu Linux za pomocą programu do pobierania tapet

Wallpaper Downloader to zręczny program do pobierania i zarządzania tapetami dla systemu Linux. Obsługuje większość środowisk graficznych Linux i jest bardzo łatwy w użyciu. Ten przewodnik

Jak zainstalować Tuxedo OS na swoim komputerze

Jak zainstalować Tuxedo OS na swoim komputerze

Chcesz przetestować Tuxedo OS na komputerach Tuxedo? Dowiedz się, jak zainstalować najnowszą wersję Tuxedo OS na swoim komputerze.

Jak zainstalować plik DEB w systemie Linux

Jak zainstalować plik DEB w systemie Linux

Czym jest plik DEB? Co ty z tym robisz? Poznaj wiele sposobów instalowania plików DEB na komputerze z systemem Linux.

Jak grać w Dying Light w systemie Linux

Jak grać w Dying Light w systemie Linux

Dying Light to gra wideo typu survival horror z 2015 roku opracowana przez Techland i wydana przez Warner Bros Interactive Entertainment. Gra koncentruje się na

Jak zainstalować Neptune Linux na swoim komputerze

Jak zainstalować Neptune Linux na swoim komputerze

Neptune używa środowiska graficznego KDE Plasma 5 i ma na celu dostarczenie eleganckiego systemu operacyjnego. Oto jak zainstalować Neptune Linux na swoim komputerze.

Wypróbuj nowy pulpit Ubuntu oparty na przystawkach

Wypróbuj nowy pulpit Ubuntu oparty na przystawkach

Chcesz wypróbować nowy system operacyjny Ubuntu oparty na pakietach Snap? Dowiedz się, jak wdrożyć go na maszynie wirtualnej, korzystając z tego przewodnika.

Jak grać w Undertale w systemie Linux

Jak grać w Undertale w systemie Linux

Undertale to niezależna gra RPG z 2015 roku, opracowana i opublikowana przez twórcę gier Toby'ego Foxa. Ten przewodnik obejmie pobieranie i instalowanie Undertale na twoim komputerze

Jak grać w Total War: THREE KINGDOMS w systemie Linux

Jak grać w Total War: THREE KINGDOMS w systemie Linux

Total War: Three Kingdoms to turowa gra strategiczna RTS opracowana przez Creative Assembly. Oto jak grać w systemie Linux.