如何知道你在Linux里最常使用哪几个命令?,


如何知道你在Linux里最常使用哪几个命令?

不知道大家自接触 Linux 以来,都使用过哪些命令,其中最常用的命令是什么?

我最常用的命令之一是 sudo ,因为我每天都在使用它在 Linux 上安装、更新、删除软件包以及其它各种需要超级用户权限的操作。

那么你知道你自己最经常使用的是哪几个命令呢?今天我们就来查看一下自己在使用 Linux 过程中最经常用的命令吧。

在 Linux 上查看你自己最经常使用的命令

在 Linux 中,历史文件 ~/.bash_history 会记录你在终端中输入过的所有命令,所以,我们可以通过这个文件来寻找你最经常使用的命令。

具体做法如下:

  1. $ history | awk '{print $2}' | sort | uniq -c | sort -nr | head -5 

上面这条命令的结果将显示用户在 Linux 上最经常使用的 5 个命令。

输出结果如下:

  1. 153 sudo118 ls33 cd30 ssh29 git 

这个结果非常清爽直观!

那么,上面这条命令各个部分你都知道它的具体作用吗?现在,我们来详细讲解。

首先我们来看下 history 命令的输出结果:

  1. alvin@alvin-pc:~$ history 743 sudo apt-get update 744 sudo apt-get upgrade 745 ls 747 ls 748 git status 

这是在 Ubuntu 上看到的结果,如果在其它平台,比如 CentOS,看到的结果会是另外一种情况,对应的命令也需要小小改动一下。

  • awk '{print $2}' 从历史文件中打印第2列字符串,不显示命令选项和参数
  • sort 按字母顺序排列所有行
  • uniq -c 删除重复行并对它们进行计数统计
  • sort -nr 根据 uniq 命令返回的统计数反向排序

小提示:你可以使用 ExplainShell 来查找命令中每个选项的功能介绍。

从结果中可以看到的,sudo 是当前用户最经常使用的命令,使用了 153 次。

结果的显示是降序的,若你要让它升序显示,那么需要使用以下命令:

  1. $ history | awk {'print $2'} | sort | uniq -c | sort -n | tail -n5 

你可以对比上一条命令查看它们的差异。

输出结果如下:

  1. 29 git  
  2. 30 ssh  
  3. 33 cd  
  4. 118 ls  
  5. 153 sudo 

如果不想限制结果数量,只需删除上述命令的最后一部分即可。

  1. $ history | awk '{print $2}' | sort | uniq -c | sort -nr  

相关内容