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

1,816

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

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

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

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

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

具体做法如下:

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

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

输出结果如下:

153 sudo
118 ls
33 cd
30 ssh
29 git

这个结果非常清爽直观!

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

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

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 次。

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

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

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

输出结果如下:

29 git
30 ssh
33 cd
118 ls
153 sudo

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

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

好了,现在大家可以去查看一下自己在 Linux 中最常用的命令了,留言告诉我你最常使用哪个命令哦。-----------------

我是良许,世界500强外企 Linux 开发工程师,专业生产 Linux 干货。欢迎关注我的公众号「良许Linux」,里面分享了 Linux入门、基础、进阶 等系列教程,同时也有 Git、Vim、开源项目 等技术干货。公众号后台回复「1024」获取最新最全的技术资料,回复「入群」进入高手如云技术交流群。