吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

總結Linux系統上的命令使用詳細情況

如意 ? 來源:Linux中國 ? 作者:Sandra Henry-stocker ? 2020-08-16 09:16 ? 次閱讀

使用合適的命令,你可以快速了解 Linux 系統上使用的命令以及執行的頻率。

匯總 Linux 系統上使用的命令只需一串相對簡單的命令以及幾條管道將它們綁定在一起。當你的歷史記錄緩沖區保留了最近的 1,000 或 2,000 條命令時,總結你的命令活動可能會變得很乏味。這篇文章提供了一種方便的方法來匯總命令的使用情況,并高亮顯示最常用的命令。

首先,請記住,典型的命令歷史記錄可能看起來像這樣。請注意,命令是顯示在命令序列號之后,并緊跟其參數

91 sudo apt-get install ccrypt

^

+-- command

請注意,history 命令遵循 HISTSIZE 的設置,這會決定保留多少條命令。可能是 500、1,000 或更多。如果你不喜歡它的設置,那么可以在 .bashrc 或其他啟動文件中添加或更改 HISTSIZE 設置。

$ echo $HISTSIZE

1000

$ history | wc -l

1000

$ grep HISTSIZE ~/.bashrc

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)

HISTSIZE=1000

記下大量命令的主要好處之一是,它可以讓你輕松地重新運行過去使用的命令,而不必重新輸入或記住它們。它還能讓你輕松地查看你在一個任務中已經做了多少工作。單獨使用 history 命令時,你會看到類似下面這樣,最早的在最前面:

$ history

7 vi tasks

8 alias

9 echo $HISTTIMEFORMAT

10 history

11 date …

查看最新使用命令需要查看記錄的命令的尾部:

$ history | tail -4

1007 echo $HISTSIZE

1008 history | wc -l

1009 history

1010 history | tail -4

另外,你可以使用 tail 命令查看 .bash_history 文件的尾部,但是 history 命令顯示的數字可以讓你輸入如 !1010 這樣的數字重新運行命令,這點通常更有用。

要提供已使用命令的匯總(例如 vi 和 echo),你可以首先使用 awk 將命令與 history 中保存的其他信息分隔開來:

$ history | awk ‘{print $2}’

vi

alias

echo

history

date

如果你將歷史記錄中的命令列表傳遞給 sort 命令以按字母順序對命令進行分組,那么會得到以下內容:

$ history | awk ‘{print $2}’ | sort

7z

7z

alias

apropos

cdcd

接下來,將 sort 命令的輸出傳遞給 uniq -c ,這將計算每個命令使用了多少次:

$ history | awk ‘{print $2}’ | sort | uniq -c

2 7z

1 alias

2 apropos

38 cd

21 chmod

最后,添加第二個 sort 命令按倒序對命令組計數進行排序,這將先列出最常用的命令:

$ history | awk ‘{print $2}’ | sort | uniq -c | sort -nr

178 ls

95 vi

63 cd

53 sudo

41 more

這樣可以讓你了解使用最多的命令,但不會包括任何你可能故意從歷史記錄文件中刪除的命令,例如:

HISTIGNORE=“pwd:clear:man:history”

當修改了歷史記錄格式時

對于默認的歷史記錄格式,history 命令輸出中的第一個字段將是每個命令的序號,第二個字段是使用的命令。因此,上面所有 awk 命令都設置成顯示 $2。

$ alias cmds=‘history | awk ’\‘’{print $2}‘\’‘ | sort | uniq -c | sort -nr’

如果你像下面那樣將日期和時間添加了到 history 命令中,那么你還必須修改所設置的別名:

$ echo $HISTTIMEFORMAT

%d/%m/%y %T

這個日期/時間信息有時會很有幫助,但是這意味著你必須在選擇 history 命令的第 4 個字段而不是第 2 個字段來匯總命令,因為你的歷史記錄條目將如下所示:

91 05/07/20 16:37:39 sudo apt-get install ccrypt

^

+-- command

因此,在將 $2 變為 $4 之后,用于檢查 history 命令的別名將改為這樣:

$ alias cmds=‘history | awk ’\‘’{print $4}‘\’‘ | sort | uniq -c | sort -nr’

可將別名保存在 .bashrc 或其他啟動文件中,請確保在 $ 符號前面插入反斜杠,以便 bash 不會嘗試解釋 $4。

alias cmds=‘history | awk ’\‘’{print \$2}‘\’‘ | uniq -c | sort -nr’

alias cmds=‘history | awk ’\‘’{print \$4}‘\’‘ | uniq -c | sort -nr’

請注意,日期和時間信息與命令本身保存在歷史記錄文件的不同行中。因此,添加此信息后,bash 歷史記錄文件的行數將增加一倍,盡管在 history 命令輸出時不會:

$ wc -l .bash_history

2000 .bash_history

$ history | wc -l

1000

總結

你可以隨時決定要保留多少命令歷史記錄,哪些命令不值得記錄,以使你的命令摘要最有用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210399
  • 命令
    +關注

    關注

    5

    文章

    696

    瀏覽量

    22111
  • 虛擬機
    +關注

    關注

    1

    文章

    940

    瀏覽量

    28427
收藏 人收藏

    評論

    相關推薦

    嵌入式開發必備-RK3562演示Linux常用系統查詢命令

    本文介紹Linux系統查看硬件配置及常用調試命令,方便開發者快速了解開發板硬件信息及進行相關調試
    的頭像 發表于 01-06 14:13 ?124次閱讀
    嵌入式開發必備-RK3562演示<b class='flag-5'>Linux</b>常用<b class='flag-5'>系統</b>查詢<b class='flag-5'>命令</b>

    嵌入式開發必備-RK3562演示Linux常用系統查詢命令)觸覺智能出品

    實用干貨!嵌入式開發學習必備-RK3562演示Linux常用系統查詢命令)關注觸覺智能持續為大家帶來更多嵌入式開發內容
    的頭像 發表于 12-31 10:51 ?117次閱讀
    嵌入式開發必備-RK3562演示<b class='flag-5'>Linux</b>常用<b class='flag-5'>系統</b>查詢<b class='flag-5'>命令</b>(<b class='flag-5'>上</b>)觸覺智能出品

    盤點Linux系統中的常見命令

    作為運維同學怎能不知道Linux系統中的lsmod、lsof、lspci、lsscsi命令呢,今天就來盤一盤她及實例。
    的頭像 發表于 12-03 09:48 ?364次閱讀
    盤點<b class='flag-5'>Linux</b><b class='flag-5'>系統</b>中的常見<b class='flag-5'>命令</b>

    Linux系統中shell命令解析

    shell是Linux系統的用戶界面,提供了用戶與內核交互的一種接口,它接收用戶輸入的命令并到送到內核去執行,因此也被稱為Linux命令
    的頭像 發表于 11-05 15:40 ?379次閱讀

    華納云監視Linux磁盤IO性能命令:iotop,iostat,vmstat,atop,dstat,ioping

    問題( input/output )是Linux系統性能不佳的最常見原因之一。當應用程序試圖在存儲設備(例如硬盤驅動器、SAN和NAS)快速讀取或寫入過多數據時,就會發生這種情況,這
    的頭像 發表于 10-24 14:43 ?266次閱讀

    Linux實用命令大全

    Linux實用命令大全
    的頭像 發表于 10-23 13:50 ?306次閱讀
    <b class='flag-5'>Linux</b>實用<b class='flag-5'>命令</b>大全

    Linux lsof命令的基本用法

    linux 系統中,一切皆文件。通過文件不僅僅可以訪問常規數據,還可以訪問網絡連接和硬件。所以 lsof 命令不僅可以查看進程打開的文件、目錄,還可以查看進程監聽的端口等 socket 相關的信息。本文將介紹 lsof
    的頭像 發表于 10-23 11:52 ?427次閱讀
    <b class='flag-5'>Linux</b> lsof<b class='flag-5'>命令</b>的基本用法

    Linux系統中man命令的基本使用

    Linux系統提供了相對比較豐富的幫助手冊(man),man是manual的縮寫,在日常linux系統管理中經常用到,今天就簡單聊聊man。man 本身也提供自己的幫助手冊,通過man
    的頭像 發表于 09-29 15:59 ?551次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>系統</b>中man<b class='flag-5'>命令</b>的基本使用

    晶閘管導通的五種情況

    晶閘管作為一種重要的電力電子器件,其導通狀態受多種因素影響。以下是晶閘管導通的五種詳細情況,每種情況都結合了晶閘管的工作原理、結構特性及外部條件進行闡述。
    的頭像 發表于 08-27 16:25 ?2684次閱讀

    常用CentOS命令總結

    CentOS(Community ENTerprise Operating System)是基于Red Hat Enterprise Linux(RHEL)的自由和開源的企業級操作系統,旨在提供一個
    的頭像 發表于 08-07 15:35 ?396次閱讀

    Linux中cut命令的實用示例

    Linux command cut 用于文本處理。您可以使用此命令通過選擇列從文件中提取部分文本。
    的頭像 發表于 08-05 15:14 ?371次閱讀

    util-linux修復WallEscape漏洞,影響Linux系統wall命令使用

    WallEscape 主要影響“wall”命令操作,Linux 系統中的常規下,該指令被用作向系統所有登錄用戶的終端發布消息。然而在處理命令
    的頭像 發表于 03-29 14:35 ?1033次閱讀

    I.MX6ULL-飛凌 ElfBoard ELF1板卡- 4g問題排查

    \\\\r\\\\n\" > /dev/ttyUSB2//查詢當前注冊詳細情況及信息
    發表于 03-15 09:21

    嵌入式學習-飛凌ElfBoard ELF 1板卡 - 4g問題排查

    \\\\r\\\\n\" > /dev/ttyUSB2//查詢當前注冊詳細情況及信息
    發表于 03-15 09:15

    linux命令概述

    電子發燒友網站提供《linux命令概述.pdf》資料免費下載
    發表于 03-11 09:18 ?3次下載
    万龙百家乐的玩法技巧和规则| 赌博百家乐规则| 百家乐官网专业术语| 百家乐官网桌子定制| 真人百家乐什么平台| 利都百家乐国际娱乐| 大发888秘籍| 瑞奇国际娱乐| 百家乐官网路单资料| 百家乐官网公试打法| 百家乐官网博彩策略| 百家乐官网开户导航| 做生意店内格局| 澳门百家乐官网网站| 百家乐游戏厅| 大发888娱乐场 888| 大发888破解| 吉木乃县| 百家乐官网2号破解下载| 百家乐官网投注综合分析法| 东莞百家乐官网的玩法技巧和规则 | 大发888游戏下载46| 大发888注册娱乐游戏| 百家乐官网技术下载| 百家乐官网打水论坛| 百家乐游戏机价格| 大发888 大发888官网| 九江市| 百家乐官网怎么完才能嬴| 百家乐视频二人雀神| 大发888游戏平台hg dafa888 gw| 赌博百家乐官网赢不了| 同乐城百家乐官网娱乐城| 尊龙百家乐娱乐场开户注册| 海立方娱乐城| 罗浮宫百家乐官网的玩法技巧和规则 | 华商棋牌游戏| 杰克百家乐官网玩法| 真人百家乐游戏软件| 博联百家乐官网游戏| 百家乐赌假的工具|