johnleung199873 2021-02-24 23:15 采纳率: 100%
浏览 969
已采纳

Linux 编写Shell脚本统计当前用户最常用的前五个指令及其次数

  • 写回答

6条回答 默认 最新

  • 规则边缘 2021-02-25 09:09
    关注

    大致思路是这样的,可以根据实际情况修改。

    history:输出历史记录,我看了一下,连续输入同样的命令,history只会记录一条。若有更符合需求的历史数据源,可替换。

    awk '{print $2}':截取历史记录中的命令列。

    sort:排序

    uniq -c:去重并统计次数

    sort -nr:排序,根据次数倒序

    head -n5:取前5行

    awk '{print $2" "$1}':格式化,命令在前,次数在后。

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 串口发送数据和接收数据
  • ¥15 JNA调用DLL报堆栈溢出错误(0xC00000FD)
  • ¥15 请教SGeMs软件的使用
  • ¥15 自己用vb.net编写了一个dll文件,如何只给授权的用户使用这个dll文件进行打包编译,未授权用户不能进行打包编译操作?
  • ¥50 深度学习运行代码直接中断
  • ¥20 需要完整的共散射点成像代码
  • ¥15 编写vba代码实现数据录入工作
  • ¥15 做过TCL海信电视小米电视相关影视会员软件私我
  • ¥15 Mapreduce是正常的,在运行其他jar包时并没有任何问题,只是在做LogCount.jar 时出的问题。如图所示
  • ¥15 ImportError: DLL load failed while importing _iterative: 找不到指定的模块。