教程

如何在 Linux 中有效地使用 history 命令

許多 Linux 伺服器的管理員需要花費大量時間在命令行上,因此查看 history 命令對他們來說是必不可少的。

以 BASH(Bourne Again SHell)為代表的用於與操作系統交互的默認命令行 Shell 在大多數主要的 Linux 發行版中被使用。

什麼是 history 命令

history 命令被用於列出以前輸入的命令和 Bash 日誌。

這個日誌被稱為 「history」 ,它能夠使我們快速查看以前在系統上執行的內容。

BASH 將關閉終端會話時所運行的所有命令並寫入你的歷史記錄文件。

~/.bash_history

當你同時運行兩個會話的時候,history 命令將單獨顯示當前的會話記錄,而不會顯示其他的歷史會話記錄。

如何查閱歷史命令

單獨運行 history 命令,無需其他選項就可以查閱先前運行的命令。如果你有大量的歷史記錄,則無法正確地看到這些記錄。在這些情況下,你必須使用諸如 less , more 等的文件視圖命令。

如何查閱最後的「 n 」命令

默認情況下,history 命令顯示我們執行的最後1000條命令。如果你只想列出「 n 」個命令,請使用以下命令。例如,顯示最近的10個歷史記錄,請運行以下命令。

history n

如何運行先前執行的命令

  • 使用 UPDOWN 方向鍵來回滾動用於瀏覽以前輸入的命令。
  • Enter 鍵執行它們或使用 LeftRight 鍵編輯命令。

重複上一個命令

重複執行你的最後一條命令,請運行以下命令。

!! - Double exclamation point

使用它的編號重複執行先前的命令

使用它的編號重複執行之前的命令。這將會很快地運行先前執行的命令,而不需要再次輸入長長的命令。

搜索並運行先前執行的命令

History 命令提供了各種搜索選項,這將允許我們搜索並運行先前執行的命令。

  • 運行在字元串開始處匹配的命令
  • 運行匹配給定字元串的命令

為了能夠執行這個操作,這裡作者調取了最後30個歷史日誌來進一步說明。

  • 如果你想運行在字元串開始處匹配的命令,請使用以下格式,它將運行以 doc 字元串開頭的最新命令。
    以作者的情況為例,它將運行位於756行的 docker run 命令。

    docker run

  • 如果你想運行匹配給定字元串的命令,請使用以下格式,以作者的情況為例,它將運行以位於754行的 docker ps 命令。

    docker ps

如何替換字元串並運行先前執行的命令

如果你想用新字元串重複上一個命令,只需要將 string1 替換為 string2 即可。(相當於使用以下命令)

> !!:s/string1/string2/

請使用以下格式。首先在下面的例子中,作者以及運行了 Fedora docker image,然後用 CentOS 而不是 Fedora 替換字元串。

如果你想運行先前使用的新字元串執行的任何具體命令,請使用以下任何一種命令格式。

以作者的情況為例。位於821行的 history 命令是 fedora docker 的容器。要想運行 centos 容器,只需將字母替換成 centos 。

使用 grep 命令列出匹配字元串

如果你已經在 docker 運行了很多命令,那麼使用 grep 和 docker 命令可以很容易地顯示匹配的命令列表。

如何在歷史命令中顯示日期和時間

默認情況下,history 命令只顯示用戶執行的命令,不顯示日期和時間,但會記錄運行命令的時間。

如果你想在 history 命令中輸出添加日期和時間,請導航至以下的鏈接。

Suggested Read : How To Display Date And Time In History Command

如何使用 YUM 命令來回滾更新

Yum( Yellowdog Update Modified )是 CentOS 和 Red Hat 系統的 RPM 軟體包管理工具。Yum 的 history 命令允許管理員將系統回滾到先前的狀態,但由於一些限制,回滾在所有的情況下都不起作用,或者 yum 命令可能不會執行任何操作,同時也可能移除您所不期望的包。

Suggested Read : How To Use YUM History Command To Rollback An Updates

如何查看其他用戶的歷史記錄

使用以下命令查看其他用戶記錄。

>  # more /home/$USER/.bash_history

#如何通過 BASH History 進行搜索

我們可以通過敲擊 CTRL-R 鍵使用關鍵字搜索先前執行的命令(這將會在歷史記錄中向後搜索並且優先顯示最近的結果)。再次按 CTRL-R 查看下一個結果。

>   # (reverse-i-search)'dock': docker run -ti centos /bin/bash

本文由 LinuxStory 志願者 Sunling 翻譯,更多詳情請查看原文。
原文鏈接:https://www.2daygeek.com/how-to-use-history-command-effectively-in-linux/
本文鏈接:https://linuxstory.org/how-to-use-histo…ctively-in-linux/
轉載請註明來自 LinuxStory ,否則必究相關責任!

對這篇文章感覺如何?

太棒了
2
不錯
0
愛死了
0
不太好
0
感覺很糟
0

You may also like

Leave a reply

您的郵箱地址不會被公開。 必填項已用 * 標註

此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

More in:教程

教程

在 Ubuntu Linux 上安裝 Clang

無論您使用的是 Ubuntu 22.04、20.04 或其他任何版本,並且想要安裝 Clang(一個開源的 C、C++ 和 Objective-C 編譯器),本文將對您有所幫助。Clang 是 GNU […]