日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux+历史命令',Linux历史命令管理以及用法

發布時間:2025/4/16 linux 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux+历史命令',Linux历史命令管理以及用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

# **history命令管理及用法總結**

**命令歷史:**shell進程會在其會話中保存此前用戶提交執行過的命令,可以用它來重復執行命令;包括關機之前的指令

~]# history

示例

![](https://s1.51cto.com/images/blog/201903/24/484dc1789ad194fb443ff3b1459a2cf4.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

**定制history的功能,可通過改變環境變量的具體值來實現:**

| 環境變量 | 意義 |

| -------- | -------- |

|HISTSIZE | shell進程可保留的命令歷史的條數 |

|HISTFILE | 持久保存命令歷史的文件 |

| HISTFILESIZE | 命令歷史文件的大小 |

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

|HISTIGNORE=“str1:str2:… “ | 忽略str1命令,str2開頭的歷史 |

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

賦予環境變量 HISTCONTROL不同的值即可改變命令歷史記錄的方式;

修改變量的值的方式:NAME='VALUE',如HISTCONTROL=ignorespace

| 環境變量值 | 意義 |

| -------- | -------- |

|ignoredups | 忽略重復的命令 |

|ignorespace| 忽略以空白字符開頭的命令 |

|ignoreboth| 以上兩者同時生效 |

|erasedups| 刪除重復命令 |

登錄shell時,會讀取命令歷史文件中記錄下的命令,命令歷史文件路徑為.bash_history

~]# cat.bash_history

登錄進shell后新執行的命令只會記錄在緩存中;這些命令會用戶退出時“追加”至命令歷史文件中

**命令用法:**

**history [-c] [-d 偏移量] [n]**

| 選項 | 效果 |

| -------- | -------- |

|-c | 清空命令歷史 |

|-d offset| 刪除歷史中指定的第offset個命令|

|n| 顯示最近的n條歷史 |

示例:

![](https://s1.51cto.com/images/blog/201903/24/2545784c10d8dc3d0c0bb3d8c9828a39.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

![](https://s1.51cto.com/images/blog/201903/24/0605f40f1cf734b2c505110628c92e2c.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

示例:

![](https://s1.51cto.com/images/blog/201903/24/2f643a4fbc29fce6be4c9c3b07e78297.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

**history -anrw [文件名]**

| 選項 | 效果 |

| -------- | -------- |

|-a | 追加本次會話新執行的命令歷史列表至歷史文件 |

|-n| 讀歷史文件中未讀過的行到歷史列表|

|-r|讀歷史文件附加到歷史列表 |

|-w| 保存緩存中的歷史列表到指定的歷史文件 |

**history -ps 參數 [參數...]**

| 選項 | 效果 |

| -------- | -------- |

|-p| 展開歷史參數成多行,但不存在歷史列表中 |

|-s|展開歷史參數成一行,附加在歷史列表后|

**調用命令歷史列表中的命令或命令參數:**

| 按鍵(鍵入) | 效果 |

| -------- | -------- |

|↑或↓|上下瀏覽從前輸入的命令 |

|!#|再一次執行歷史列表中的第#條命令|

|!:0|執行前一條命令(去除參數)|

|!-n|執行history歷史中倒數第n個命令|

|!!|再一次執行上一條命令|

|!STRING|再一次執行命令歷史列表中最近一個以STRING開頭的命令|

|!STRING:p|僅打印最近一個以STRING開頭命令歷史,而不執行|

|!?STRING|重復前一個包含STRING的命令|

|!:gs/string1/string2|將上一條命令中所有的string1都替換為 string2|

|Ctrl + p|翻出前一條命令|

|Ctrl + n |顯示當前歷史中的下一條命令,但不執行|

|Ctrl + j |執行當前命令|

|Ctrl + r|在命令歷史中搜索命令|

|Ctrl + g|從歷史搜索模式退出|

|!$或先按ESC,再按 .鍵或Alt+ .(按住Alt鍵的同時點擊.鍵)|調用上一條命令的最后一個參數|

|!$:p|打印輸出 !$ (上一條命令的最后一個參數)的內容|

|!*:p|打印輸出!*(上一條命令的所有參數)的內容|

|^string|刪除上一條命令中的第一個string|

|^string1^string2|將上一條命令中的第一個string1替換為string2|

*注:Alt+ .的調用方式需在XShell中設置Meta鍵仿真,如下圖所示*

![](https://s1.51cto.com/images/blog/201903/23/185560cf9f9abfa6080c3ad787288f89.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

示例:

!STRING和!STRING:p

![](https://s1.51cto.com/images/blog/201903/24/deadf6ba140c2c775f4f3f2242db6505.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

!:gs/string1/string2

![](https://s1.51cto.com/images/blog/201903/24/a915b82e1338abf35f6b49b4ac0394f3.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

!$:p

![](https://s1.51cto.com/images/blog/201903/24/4d719ca31af27b3c6360e41b16f48b91.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)![](https://s1.51cto.com/images/blog/201903/24/4d719ca31af27b3c6360e41b16f48b91.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

!*:p

![](https://s1.51cto.com/images/blog/201903/24/c49a489ac15ae5955b37dfff26dacac3.png?x-oss-process=image/watermark,size_10,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

總結

以上是生活随笔為你收集整理的linux+历史命令',Linux历史命令管理以及用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。