LINUX命令歷史

LINUX命令歷史

LINUX的命令歷史是什么?

linux的命令歷史的作用是,記錄執行過的命令。如果你經常使用 Linux 命令行,那么使用 命令歷史可以有效地提升你的效率。
history(管理歷史命令)
語法:[root@localhost]#history(選項)(參數)
選項:
n:n為數字,要列出最近的 n 筆命令列表
-c(清空所有歷史命令)
-d (刪除歷史命令中指定的第offset條命令)
-a(追加本次會話中的新執行的命令歷史列表到歷史文件)
-n(讀取歷史文件中未讀過的行到命令歷史列表)
-r(讀取歷史文件到歷史列表)
-w(保存歷史列表到指定的歷史文件)
-p(展開歷史參數成多行,但不存在歷史列表中)
-s(展開歷史參數成一行,附加在歷史列表后)

運行特定的歷史命令

history會列出bash保存的所有歷史命令,并且給它們編了號,我們可以使用“嘆號接編號”的方式運行特定的歷史命令.
語法說明:[root@localhost]# [!number] [!command] [!!]
參數說明:
number :第幾個指令的意思;
command :指令的開頭幾個字母
! :上一個指令的意思!
用法介紹:
重復前一個命令(4種方法):

重復前一個命令使用上方向鍵,并回車執行
按 !! 并回車執行
輸入 !-1 并回車執行
按 Ctrl+p 并回車執行
!:0 執行前一條命令(去除參數)

Ctrl + n 顯示當前歷史中的下一條命令,但不執行
Ctrl + j 執行當前命令
!n 執行history命令輸出對應序號n的命令
!-n 執行history歷史中倒數第n個命令
!string 重復前一個以“string”開頭的命令
!?string 重復前一個包含string的命令
!string:p 僅打印命令歷史,而不執行
!$:p 打印輸出 !$ (上一條命令的最后一個參數)的內容
!*:p 打印輸出 !*(上一條命令的所有參數)的內容
^string 刪除上一條命令中的第一個string
^string1^string2 將上一條命令中的第一個string1替換為string2
!:gs/string1/string2 將上一條命令中所有的string1都替換為string2
使用up(向上)和down(向下)鍵來上下瀏覽從前輸入的命令
ctrl-r來在命令歷史中搜索命令(reverse-i-search):
Ctrl+g:從歷史搜索模式退出

調用歷史參數

要重新調用前一個命令中最后一個參數:
!$ 表示前一個命令最后一個參數。

Esc, .(點擊Esc鍵后松開,然后點擊 . 鍵)
Alt+ .(按住Alt鍵的同時點擊 . 鍵)
command !^ : 利用上一個命令的第一個參數做cmd的參數
command !$?: 利用上一個命令的最后一個參數做cmd的參數
command !* : 利用上一個命令的全部參數做cmd的參數
command !:n : 利用上一個命令的第n個參數做cmd的參數
command !n:^ 調用第n條命令的第一個參數
command !n:$?調用第n條命令的最后一個參數
command !n:m 調用第n條命令的第m個參數
command !n:* 調用第n條命令的所有參數
command !string:^ 從命令歷史中搜索以 string 開頭的命令,并獲取它的第一個參數
command !string:$ 從命令歷史中搜索以 string 開頭的命令,并獲取它的最后一個參數
command !string:n 從命令歷史中搜索以 string 開頭的命令,并獲取它的第n個參數
command !string:* 從命令歷史中搜索以 string 開頭的命令,并獲取它的所有參數

環境設定

命令歷史相關環境變量:

HISTSIZE:命令歷史記錄的條數

HISTFILE:指定歷史文件,默認為~/.bash_history

HISTFILESIZE:命令歷史文件記錄歷史的條數

HISTTIMEFORMAT=“%F %T “ 顯示時間

HISTIGNORE=“str1:str2:… “ 忽略string1,string2歷史

控制命令歷史的記錄方式:

環境變量:HISTCONTROL

ignoredups 默認,忽略重復的命令,連續且相同為“重復”

ignorespace 忽略所有以空白開頭的命令

ignoreboth 相當于ignoredups, ignorespace的組合

erasedups 刪除重復命令

export 變量名=”值“

history命令相關的配置文件存放在 /etc/profile 或 ~/.bash_profile,更改之后永久有效

原創文章,作者:geekdeedy,如若轉載,請注明出處:http://www.www58058.com/77049

(6)
geekdeedygeekdeedy
上一篇 2017-09-14 13:42
下一篇 2017-09-14 15:34

相關推薦

  • ELK 日志分析實例

    網海過客www.chinasa.net ELK 日志分析實例一、ELK-web日志分析二、ELK-MySQL 慢查詢日志分析三、ELK-SSH登陸日志分析四、ELK-vsftpd 日志分析 一、ELK-web日志分析 通過logstash grok正則將web日志過濾出來,輸出到Elasticsearch 搜索引擎里,通過Kibana前端展示。  …

    Linux干貨 2016-06-03
  • Haproxy的基礎應用!

            本篇博客主要是和大家共同了解一下Haproxy的功能與基礎應用,目的是更加熟練的掌握Haproxy的工作原理,為將來的工種中做好鋪墊!       本篇博客共分為兩個部分:      …

    2017-05-16
  • 第三周作業

    1、列出當前系統上所有已登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 ~]# who | cut -d ' ' -f 1 | sort -u 2、取出最后登錄到當前系統的用戶的相關信息。 ~]# la…

    Linux干貨 2016-12-19
  • 8月3日課堂練習及課后作業

    課堂練習 1、創建用戶gentoo,附加組為bin和root,默認shell為/bin/csh,注釋信息為“Gentoo Distribution” useradd -G bin,root -s /bin/csh -c "Gentoo Distribution" gentoo  2、創建下面的用戶、組和組成員關系,名字為admi…

    Linux干貨 2016-08-04
  • 廣域網中的DNS服務

    拓撲圖                      創建主DNS:     配置文件/etc/named.conf&nbs…

    2017-04-15
  • swap與dd命令使用詳解

    處理交換文件和分區     交換分區是系統RAM 的補充 基本設置包括:     創建交換分區或者文件     使用mkswap 寫入特殊簽名     在/etc/fstab 文件中添加適當的條目 &…

    Linux干貨 2017-04-30
欧美性久久久久