如何備份 Linux 終端歷史記錄

如何備份 Linux 終端歷史記錄

Linux 終端具有“歷史”功能。使用此功能,您輸入的每個命令操作都將被備份以備後用。由於您的所有終端命令都保存在“歷史記錄”中,因此必須對其進行備份以妥善保管。

在本指南中,我們將向您展示如何備份 Linux 終端歷史記錄以及如何恢復備份。所以,打開你最喜歡的 Linux 終端模擬器,然後繼續吧!

Linux 終端歷史存儲在哪裡?

Linux 終端將其歷史記錄存儲在一個文件中。該文件名為“.bash_history”。任何人都可以編輯它,它存儲在主目錄中。由於 Linux 的終端歷史文件存儲在用戶目錄中,因此系統上的每個用戶都有一個文件。

特殊權限不會保護這些歷史文件,系統上的任何用戶都可以通過一個簡單的命令查看另一個用戶的歷史。因此,例如,如果我想查看 Linux 系統上用戶名“user”的終端/命令行歷史記錄,我會這樣做:

如何備份 Linux 終端歷史記錄

cat /home/user/.bash_history

用戶還可以通過簡單地執行“history”命令,在 Linux 終端 shell 中查看他們登錄的當前用戶的歷史記錄。

歷史

最重要的是,由於“歷史”只是一個文件,因此可以使用 grep 函數像搜索常規文本文件一樣搜索它。因此,例如,使用以下命令在用戶名中查找“git clone”的實例。

cat /home/user/.bash_history | grep 'git 克隆'

它還可以作為當前登錄的用戶使用“history”命令。

歷史 | grep '搜索詞'

將終端歷史記錄保存到備份

在本指南的前一節中,我談到了 Linux 終端的“歷史”如何只是一個包含所有用戶輸入命令的整齊隱藏的文本文件。好吧,由於它只是一個文件,這意味著備份以進行保管非常容易。

要創建備份,請使用 cat 命令。為什麼?使用 cat,您可以直接在終端中查看整個文本文件。我們可以將此命令與“>”符號結合使用,將查看輸出重定向到備份文件。

因此,例如,要備份您當前的歷史記錄,請針對“~/.bash_history”運行cat命令並將其保存到帶有“history_backup”標籤的文件中。

如何備份 Linux 終端歷史記錄

cat ~/.bash_history > history_backup

您還可以結合“>”運行歷史命令並以這種方式保存。

歷史 > history_backup

最後,可以通過運行以下命令來備份另一個未登錄用戶的命令行/終端歷史記錄。

注意:請務必將“用戶名”更改為您要從中保存歷史記錄的用戶。

cat /home/username/.bash_history > history_backup

只備份某些歷史項目

您可能只想備份 Linux 終端歷史記錄中的特定命令。這樣做的方法是查看歷史文件並將其與grep命令結合起來,它會過濾特定的關鍵字。

例如,要僅備份 Linux 終端歷史記錄中包含git clonegit命令的命令,您可以運行以下操作。

注意:在這些示例中,我們使用“>>”而不是“>”。“>>”的原因是它不會覆蓋歷史文件備份的內容,並且可以重新運行多次添加到備份中。

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

或者

cat /home/username/.bash_history | grep 'git' >> history_backup

使用grep過濾也可以應用於history命令,就像這樣。

歷史 | grep 'git' >> history_backup

要備份歷史文件中的某些關鍵字,請將上面示例中的“git”替換為您想要備份的任何命令。根據需要隨意重新運行此命令。

如何恢復歷史備份

恢復歷史備份就像刪除原始文件並將備份放在原來的位置一樣簡單。要刪除原始歷史文件,請在終端窗口中使用rm命令刪除“.bash_history”。

rm ~/.bash_history

從要恢復歷史記錄的用戶的主文件夾中刪除原始歷史記錄文件後,使用mv命令將“history_backup”重命名為“.bash_history”。

mv history_backup ~/.bash_history

現在新的歷史文件已經就位,運行history -rw命令來重新加載終端的歷史功能。

歷史記錄 -rw

然後,您將能夠通過以下方式查看您的終端歷史記錄:

歷史

為其他用戶恢復備份

需要從系統上的其他用戶恢復歷史備份?為此,首先使用su命令登錄其用戶。

用戶名

登錄用戶後,刪除駐留在用戶主目錄 (~) 中的當前歷史文件。

rm ~/.bash_history

從那裡,將歷史備份文件重命名為用戶目錄中的新“.bash_history”文件。

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

將更改寫入:

歷史記錄 -rw

完成後,運行history以在終端窗口中查看恢復的命令。


使用 Pano 改進 Gnome Shell 剪貼板

使用 Pano 改進 Gnome Shell 剪貼板

讓我們面對現實吧,默認的 Gnome Shell 剪貼板並不是很好。安裝 Pano 來改善您的剪貼板體驗!

如何在Linux上安裝DaVinci Resolve 17

如何在Linux上安裝DaVinci Resolve 17

您的 Linux 機器需要一個出色的非線性視頻編輯器嗎?使用本指南使用 Davinci Resolve 17!

如何使用壁紙下載器將壁紙下載到 Linux 桌面

如何使用壁紙下載器將壁紙下載到 Linux 桌面

Wallpaper Downloader 是一個靈活的 Linux 壁紙下載和管理器。它支持大多數Linux桌面環境,並且非常易於使用。本指南

如何在計算機上安裝 Tuxedo 操作系統

如何在計算機上安裝 Tuxedo 操作系統

想要通過 Tuxedo 計算機測試 Tuxedo 操作系統嗎?了解如何讓最新版本的 Tuxedo OS 在您的 PC 上運行。

如何在 Linux 上安裝 DEB 文件

如何在 Linux 上安裝 DEB 文件

什麼是 .DEB 文件?你用它做什麼?了解在 Linux PC 上安裝 DEB 文件的多種方法。

如何在 Linux 上玩消逝的光芒

如何在 Linux 上玩消逝的光芒

《消逝的光芒》是一款由 Techland 開發、華納兄弟互動娛樂發行的 2015 年生存恐怖視頻遊戲。遊戲的中心是

如何在計算機上安裝 Neptune Linux

如何在計算機上安裝 Neptune Linux

Neptune 使用 KDE Plasma 5 桌面環境,旨在提供優雅的操作系統。以下是如何在計算機上安裝 Neptune Linux。

嘗試 Ubuntu 的新基於 snap 的桌面

嘗試 Ubuntu 的新基於 snap 的桌面

想嘗試 Ubuntu 的新的基於 snap 包的桌面操作系統嗎?通過本指南了解如何將其部署在虛擬機上。

如何在 Linux 上玩《傳說之下》

如何在 Linux 上玩《傳說之下》

Undertale 是一款 2015 年 2D 獨立角色扮演遊戲,由遊戲開發商 Toby Fox 開發和發行。本指南將介紹在您的電腦上下載和安裝 Undertale

如何在 Linux 上玩《全面戰爭:三個王國》

如何在 Linux 上玩《全面戰爭:三個王國》

《全面戰爭:三個王國》是一款由 Creative Assembly 開發的回合製策略 RTS 遊戲。下面是如何在 Linux 上玩遊戲。