自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在 Linux 上調整命令歷史

系統(tǒng) Linux
Linux 系統(tǒng)中的 bash history 命令有助于記住你以前運行過的命令,并重復這些命令,而不必重新輸入。

Linux 系統(tǒng)中的 bash history 命令有助于記住你以前運行過的命令,并重復這些命令,而不必重新輸入。

如果可以的話,你肯定會很高興不用翻閱十幾頁的手冊,每過一會再次列出你的文件,而是通過輸入 history 查看以前運行的命令。在這篇文章中,我們將探討如何讓 history 命令記住你希望它記住的內容,并忘記那些可能沒有什么“歷史價值”的命令。

[[341330]]

查看你的命令歷史

要查看以前運行過的命令,你只需輸入 history。你可能會看到一長串命令。記憶的命令數(shù)量取決于在 ~/.bashrc 文件中設置的名為 $HISTSIZE 的環(huán)境變量,但是如果你想保存更多或更少的命令,你可以根據(jù)你的需要改變這個設置。

要查看歷史記錄,請使用 history 命令:

  1. $ history 
  2. 209 uname -v 
  3. 210 date 
  4. 211 man chage 
  5. ... 

要查看將顯示的最大命令數(shù)量:

  1. $ echo $HISTSIZE 
  2. 500 

你可以通過運行這樣的命令來改變 $HISTSIZE 并使之永久化:

  1. $ export HISTSIZE=1000 
  2. $ echo "HISTSIZE=1000>> ~/.bashrc 

在為你保留多少歷史記錄和當你輸入 history 時顯示多少歷史記錄之間也有區(qū)別。$HISTSIZE 變量控制顯示多少歷史記錄,而 $HISTFILESIZE 變量控制在你的 .bash_history 文件中保留多少命令。

  1. $ echo $HISTSIZE 
  2. 1000 
  3. $ echo $HISTFILESIZE 
  4. 2000 

你可以通過計算歷史文件中的行數(shù)來驗證第二個變量:

  1. $ wc -l .bash_history 
  2. 2000 .bash_history 

需要注意的是,在登錄會話中輸入的命令在注銷前不會被添加到你的 .bash_history 文件中,盡管它們會立即顯示在 history 命令輸出中。

使用歷史

有三種方法可以重發(fā)你在 history 中發(fā)現(xiàn)的命令。最簡單的方法,特別是當你想重用的命令是最近運行的時候,通常是輸入一個 ! 后面跟上命令中足夠多的首字母來唯一地識別它。

  1. $ !u 
  2. uname -v 
  3. #37-Ubuntu SMP Thu Mar 26 20:41:27 UTC 2020 

另一種簡單的重復命令的方法是,只需按上箭頭鍵,直到顯示了該命令,然后按回車鍵。

另外,如果你運行 history 命令,并看到你想重新運行的命令被列出,你可以輸入一個 ! 后面跟著命令左邊顯示的序號。

  1. $ !209 
  2. uname -v 
  3. #37-Ubuntu SMP Thu Mar 26 20:41:27 UTC 2020 

隱藏歷史

如果你想在一段時間內停止記錄命令,你可以使用這個命令:

  1. $ set +o history 

當你輸入 history 時,你輸入的命令不會顯示出來,當你退出會話或退出終端時,它們也不會被添加到你的 .bash_history 文件中。

要取消這個設置,使用 set -o history。

要使它永久化,你可以把它添加到你的 .bashrc 文件中,盡管不使用命令歷史記錄通常不是一個好主意。

  1. $ echo 'set +o history' >> ~/.bashrc 

要暫時清除歷史記錄,這樣在輸入 history 時只顯示之后輸入的命令,可以使用 history -c(清除)命令:

  1. $ history | tail -3 
  2. 209 uname -v 
  3. 210 date 
  4. 211 man chage 
  5. $ history -c 
  6. $ history 
  7. 1  history 

注意:在輸入 history -c 后輸入的命令不會被添加到 .bash_history 文件中。

控制歷史

許多系統(tǒng)上的 history 命令的設置會默認包括一個名為 $HISTCONTROL 的變量,以確保即使你連續(xù)運行同一命令七次,也只會被記住一次。它還可以確保你在首先輸入一個或多個空格后跟著的命令將從你的命令歷史記錄中忽略。

  1. $ grep HISTCONTROL .bashrc 
  2. HISTCONTROL=ignoreboth 

ignoreboth 的意思是“忽略重復的命令和以空格開頭的命令”。例如,如果你輸入這些命令:

  1. $ echo try this 
  2. $ date 
  3. $ date 
  4. $ date 
  5. $   pwd 
  6. $ history 

你的 history 命令應該像這樣報告:

  1. $ history 
  2. $ echo try this 
  3. $ date 
  4. $ history 

請注意,連續(xù)的 date 命令被縮減為一條,以空格縮進的命令被省略。

忽略歷史

要忽略某些命令,使它們在你輸入 history 時不會出現(xiàn),也不會被添加到你的 .bash_history 文件中,可以使用 $HISTIGNORE 設置。例如:

  1. $ export HISTIGNORE=”history:cd:exit:ls:pwd:man” 

這個設置將導致所有的 history、cd、exit、ls、pwd 和 man 命令從你的 history 命令的輸出和 .bash_history 文件中被忽略。

如果你想把這個設置變成永久性的,你必須把它添加到你的 .bashrc 文件中。

  1. $ echo 'HISTIGNORE="history:cd:exit:ls:pwd:man">> .bashrc 

這個設置只是意味著當你回看以前運行的命令時,列表不會被你在查看命令歷史記錄時不想看到的命令所干擾。

記住、忽略和忘記過去的命令

命令歷史記錄很有用,因為它可以幫助你記住最近使用過的命令,并提醒你最近所做的更改。它還可以讓你更容易地重新運行命令,特別是那些有一串參數(shù)但你不一定想重新創(chuàng)建的命令。定制你的歷史設置可以讓你對命令歷史的使用變得更容易,更有效率。

 

責任編輯:趙寧寧 來源: Linux中國
相關推薦

2011-09-29 11:22:47

Linux 歷史命令

2011-06-27 09:40:09

Linux歷史命令

2020-03-30 08:45:31

Linux命令

2021-09-13 09:30:09

Linux調整圖像ImageMagick

2012-10-09 11:02:55

IBMdw

2012-05-10 10:53:10

Linuxhistory

2011-06-27 14:08:21

Linux歷史命令

2016-07-18 14:27:43

操作系統(tǒng)Linux隱藏命令

2022-05-06 08:26:23

GwenviewLinux照片

2023-08-12 15:05:26

Linuxcp 命令

2023-07-04 16:36:03

Linuxcd 命令

2023-07-23 19:26:18

Linuxcat 命令

2010-04-27 16:25:53

AIX內存

2009-12-09 14:25:31

2012-04-01 14:44:49

Linux歷史

2015-09-07 11:49:30

CaliseRedshiftLinux

2018-01-08 15:30:18

Linux命令date

2010-01-22 10:51:54

svn命令linux

2020-12-07 06:25:14

Linux Truncate 命令

2020-04-10 09:56:12

at命令Linux安排任務
點贊
收藏

51CTO技術棧公眾號