Linux 中history命令詳解

2021-10-08 20:43:53 字數 2503 閱讀 3191

# history (選項)(引數)
引數

含義備註

n顯示最近的n條記錄

-a將歷史命令緩衝區中命令寫入歷史命令檔案中

-c將目前的shell中的所有 history 內容全部消除實際為假刪除

-r將歷史命令檔案中的命令讀入當前歷史命令緩衝區

-w將當前歷史命令緩衝區命令寫入歷史命令檔案中

-d刪除歷史記錄中指定的行

# 獲取歷史記錄的最新2兩條

[root@localhost data]# history 2

344 cat data.log | grep 5435

345 printf '%x\n' 20235 # 將20235以16進製制輸出

# 執行最後一次命令

[root@localhost data]# !!

history

344 cat data.log | grep 5435

345 printf '%x\n' 20235 # 將20235以16進製制輸出

# 清空當前歷史記錄(只是清空快取中的歷史記錄,偽刪除)

[root@localhost ~]# history -c

# 將當前快取中的歷史記錄寫入檔案(快取中的記錄是空的-用空的資料寫入檔案,將檔案內部刪除)

[root@localhost ~]# history -w

# 刪除358行歷史記錄(這樣可以有針對性的保留歷史記錄)

[root@localhost ~]# history -d 358

# 通過vim或者是vi命令直接修改.bash_history檔案

[root@localhost ~]# vi ~/.bash_history

# 顯示命令時間

[root@localhost ~]# export histtimeformat='%f %t '

[root@localhost ~]# history

1 2020-08-04 20:26:10 hisotry -w

#將histsize設定為0,代表禁用history

[root@localhost ~]# export histsize=0

# 設定命令儲存的行數,超過的話會自動刪除最老的資料

[root@localhost ~]# export histsize=100000

[root@localhost ~]# export histfilesize=100000

# 設定歷史記錄的檔名稱為history.cmd

[root@localhost ~]# export histfile=history.cmd

# 剔除連續的相同命令的條目,僅剩餘一條

[root@localhost ~]# export histcontrol=ignoredups

# 在不想被記住的命令前面輸入乙個空格-就不會被記住

[root@localhost ~]# export histcontrol=ignorespace

#忽略pwd、ls命令

[root@localhost ~]# export histignore="pwd:ls:"

# 設定當前shell內的命令不再進入日誌中

[root@localhost data]# set +o history

# 設定當前shell內的重新進入日誌中

[root@localhost data]# set -o history

Linux基礎命令 history

shell內建命令 history命令用於顯示指定數目的指令命令,讀取歷史命令檔案中的目錄到歷史命令緩衝區和將歷史命令緩衝區中的目錄寫入命令檔案。該命令單獨使用時,僅顯示歷史命令,在命令列中,可以使用符號 執行指定序號的歷史命令。例如,要執行第2個歷史命令,則輸入 2。歷史命令是被儲存在記憶體中的,...

linux中history命令使用與配置

history中設定顯示命令的執行時間 vi root bashrc histtimeformat y m d h m s export histtimeformat為了使以上設定生效,執行以下命令 wq source bashrc history命令清除命令執行操作的歷史記錄 history c ...

linux怎麼在history命令中前面顯示日期

我們都對 history 命令很熟悉。它將終端上 bash 執行過的所有命令儲存到 bash history 檔案中,來幫助我們複查使用者之前執行過的命令。預設情況下 history 命令直接顯示使用者執行的命令而不會輸出執行命令時的日期和時間,即使 history 命令記錄了這個時間。執行 his...