linux history 能否按日期查看歷史

小樊
81
2024-10-09 09:51:37

在Linux中,history命令默認(rèn)會(huì)顯示你執(zhí)行過(guò)的所有命令,但不會(huì)按照日期進(jìn)行篩選。然而,你可以結(jié)合其他命令來(lái)實(shí)現(xiàn)按日期查看歷史記錄的功能。

一種方法是使用awkdate命令來(lái)處理history命令的輸出。你可以將history命令的輸出通過(guò)管道傳遞給awk,然后使用date命令來(lái)解析和篩選日期。

以下是一個(gè)示例命令,它會(huì)顯示你最近7天內(nèi)執(zhí)行過(guò)的命令:

history | awk '{print $2}' | sort | uniq -c | sort -nr | awk '$1 >= 7 {print $2}'

這個(gè)命令的解釋如下:

  1. history:顯示歷史記錄。
  2. awk '{print $2}':提取每行的第二個(gè)字段(通常是命令本身)。
  3. sort:對(duì)提取的命令進(jìn)行排序。
  4. uniq -c:計(jì)算每個(gè)命令出現(xiàn)的次數(shù)。
  5. sort -nr:按出現(xiàn)次數(shù)降序排序。
  6. awk '$1 >= 7 {print $2}':只顯示出現(xiàn)次數(shù)大于或等于7次的命令。

請(qǐng)注意,這個(gè)命令只會(huì)顯示最近7天內(nèi)的命令。如果你需要查看更早的歷史記錄,你可以根據(jù)需要調(diào)整$1 >= 7條件中的數(shù)字。

另外,如果你經(jīng)常需要按日期查看歷史記錄,你可以考慮將history命令的輸出保存到一個(gè)文件中,然后使用文本編輯器或腳本對(duì)該文件進(jìn)行篩選和查看。例如,你可以將history命令的輸出保存到一個(gè)名為history.txt的文件中,然后使用grep命令來(lái)篩選特定日期的命令。

0