如果你是 Linux 命令列的用戶,有的時候你可能不希望某些命令記錄在你的命令列歷史中。原因可能很多,例如,你在公司擔任某個職位,你有一些不希望被其它人濫用的特權。亦或者有些特別重要的指令,你不希望在你瀏覽歷史清單時誤執行。
然而,有方法可以控制哪些命令進入歷史列表,哪些不進入嗎?或者換句話說,我們在 Linux 終端機中可以開啟像瀏覽器一樣的無痕模式嗎?答案是肯定的,而且根據你想要的具體目標,有很多實現方法。在這篇文章中,我們將討論一些行之有效的方法。
注意:文中出現的所有指令都在 Ubuntu 下測試過。
前面兩種方法已經在之前一篇文章中描述了。如果你已經了解,這部分可以略過。然而,如果你不了解,建議仔細閱讀。
是的,沒看錯。在指令前面插入空格,這條指令會被 shell 忽略,也表示它不會出現在歷史記錄中。但這種方法有個前提,只有在你的環境變數 HISTCONTROL 設定為 "ignorespace" 或 "ignoreboth" 才會運作。在大多數情況下,這個是預設值。
所以,像下面的指令(這裡 [space] 表示輸入一個空格):
[space]echo "this is a top secret"
如果你之前執行過如下設定環境變數的指令,那麼上述指令不會出現在歷史記錄中。
export HISTCONTROL = ignorespace
下面的截圖就是這種方式的一個例子。
第四個 "echo" 指令因為前面有空格,它沒有被記錄到歷史中。
如果你想停用某個會話所有歷史,你可以在開始命令列工作前簡單地清除環境變數 HISTSIZE 的值即可。執行下面的命令來清除其值:
export HISTSIZE=0
HISTSIZE 表示對於 bash 會話其歷史列表中可以保存命令的個數(行數)。預設情況,它設定了一個非零值,例如在我的電腦上,它的值為 1000。
所以上面所提到的指令將其值設為 0,結果就是直到你關閉終端,沒有東西會儲存在歷史記錄中。記住同樣你也不能透過按下向上的箭頭按鍵或執行 history 指令來看到先前執行的指令。
這可以看作是前一部分所提方案的另外一種實現。唯一的區別是在你完成所有工作之後執行這個命令。下面是剛才說到的指令:
history -cw
剛才已經提到,這個和 HISTSIZE 方法有相同效果。
雖然前面描述的方法(2 和 3)可以實現目的,它們可以清除整個歷史,在很多情況下,有些可能不是我們所期望的。有時候你可能想要保存直到你開始命令列工作之間的歷史記錄。對於這樣的需求,你開始在工作前執行下述指令:
[space]set +o history
備註:[space] 表示空格。並且由於空格的緣故,該命令本身也不會被記錄。
上面的命令會暫時禁用歷史功能,這意味著在這命令之後你執行的所有操作都不會記錄到歷史中,然而這個命令之前的所有東西都會原樣記錄在歷史列表中。
要重新開啟歷史功能,執行下面的指令:
[Space]set -o history
它將環境恢復原狀,也就是你完成了你的工作,執行上述命令之後的命令都會出現在歷史中。
现在假设历史记录中已经包含了一些你不希望记录的命令。这种情况下我们怎么办?很简单。直接动手删除它们。通过下面的命令来删除:
history | grep "part of command you want to remove"
上面的命令会输出历史记录中匹配的命令,每一条前面会有个数字。
一旦你找到你想删除的命令,执行下面的命令,从历史记录中删除那个指定的项:
history -d [num]
下面是这个例子的截图。
第二个 ‘echo’命令被成功的删除了。
(如果你不希望上述命令本身也被记录进历史中,你可以在上述命令前加个空格)
同样的,你可以使用向上的箭头一直往回翻看历史记录。当你发现你感兴趣的命令出现在终端上时,按下 “Ctrl + U”清除整行,也会从历史记录中删除它。
有多种不同的方法可以操作 Linux 命令行历史来满足你的需求。然而请记住,从历史中隐藏或者删除命令通常不是一个好习惯,尽管本质上这并没有错。但是你必须知道你在做什么,以及可能产生的后果。
以上是如何隱藏你的 Linux 的命令列歷史的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Linux操作系統的核心是其命令行界面,通過命令行可以執行各種操作。 1.文件和目錄操作使用ls、cd、mkdir、rm等命令管理文件和目錄。 2.用戶和權限管理通過useradd、passwd、chmod等命令確保系統安全和資源分配。 3.進程管理使用ps、kill等命令監控和控制系統進程。 4.網絡操作包括ping、ifconfig、ssh等命令配置和管理網絡連接。 5.系統監控和維護通過top、df、du等命令了解系統運行狀態和資源使用情況。

介紹 Linux是一個強大的操作系統,由於其靈活性和效率,開發人員,系統管理員和電源用戶都喜歡。但是,經常使用長而復雜的命令可能是乏味的

Linux適用於服務器、開發環境和嵌入式系統。 1.作為服務器操作系統,Linux穩定高效,常用於部署高並發應用。 2.作為開發環境,Linux提供高效的命令行工具和包管理系統,提升開發效率。 3.在嵌入式系統中,Linux輕量且可定制,適合資源有限的環境。

簡介:通過基於Linux的道德黑客攻擊數字邊界 在我們越來越相互聯繫的世界中,網絡安全至關重要。 道德黑客入侵和滲透測試對於主動識別和減輕脆弱性至關重要

Linux基礎學習從零開始的方法包括:1.了解文件系統和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.學習文件操作,如創建和編輯文件,4.探索高級用法如管道和grep命令,5.掌握調試技巧和性能優化,6.通過實踐和探索不斷提陞技能。

Linux在服務器、嵌入式系統和桌面環境中的應用廣泛。 1)在服務器領域,Linux因其穩定性和安全性成為託管網站、數據庫和應用的理想選擇。 2)在嵌入式系統中,Linux因其高度定制性和高效性而受歡迎。 3)在桌面環境中,Linux提供了多種桌面環境,滿足不同用戶需求。

Linux的缺點包括用戶體驗、軟件兼容性、硬件支持和學習曲線。 1.用戶體驗不如Windows或macOS友好,依賴命令行界面。 2.軟件兼容性不如其他系統,缺乏許多商業軟件的原生版本。 3.硬件支持不如Windows全面,可能需要手動編譯驅動程序。 4.學習曲線較陡峭,掌握命令行操作需要時間和耐心。

Linuxisnothardtolearn,butthedifficultydependsonyourbackgroundandgoals.ForthosewithOSexperience,especiallycommand-linefamiliarity,Linuxisaneasytransition.Beginnersmayfaceasteeperlearningcurvebutcanmanagewithproperresources.Linux'sopen-sourcenature,bas


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

記事本++7.3.1
好用且免費的程式碼編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3漢化版
中文版,非常好用