IT技术博客大学习 共学习 共进步

统计最近用过的linux命令

我爱正则表达式 2012-09-20 14:01:59 浏览 6,405 次

统计最近用过的linux命令。没什么具体用途,练习bash而已。

流程:

  • history 命令中得到最近1000条命令。
  • 删除每行的行号。
  • 记录每一行中的命令。行首的第一个英文单词,以及管道后面的第一个英文单词,视为命令名称。
  • 将得到的命令列表排序。
  • 统计每个命令的出现次数,先以次数降序排列,再以命令名称升序排列。

完整的命令为:history | sed "s#^\s\+[0-9]\+\s\+##g" | grep -oP "(?<=^|\|)\w+"|sort |uniq -c| sort -k1,1nr -k2

以下是本人的ubuntu命令显示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
    157 ls
    134 cd
     89 pcregrep
     76 cat
     56 xargs
     52 python
     49 vim
     47 sudo
     46 git
     44 exit
     37 rename
     28 echo
     27 sed
     27 tstp
     26 adt
     26 grep
     19 curl
     18 rm
     16 history
     16 wget
     12 ps
     10 kill
     10 make
     10 perl
      8 ll
      8 mv
      8 scp
      8 sfo
      7 ctags
      7 tst
      6 awk
      6 gvim
      6 mkdir
      6 sort
      4 chmod
      4 man
      4 uniq
      3 cjb
      3 md5sum
      3 tt
      3 vmxp
      3 which
      2 chown
      2 ctag
      2 docky
      2 ex
      2 ks
      2 pyton
      2 set
      2 tar
      1 bc
      1 cdcd
      1 cp
      1 cpanm
      1 date
      1 efr
      1 firefox
      1 gawk
      1 gi
      1 less
      1 lua
      1 PWD
      1 re
      1 sleep
      1 tpo
      1 unzip
      1 vi
      1 vm
      1 xarg

建议继续学习

  1. grep 正则表达式选项要记得转义 (阅读 6,445)
  2. 正则表达式基础 (阅读 6,162)
  3. 正则表达式的与或非 (阅读 5,744)
  4. 学习Grep,Sed中的正则 (阅读 5,267)
  5. URL正则表达式 (阅读 4,663)
  6. 正则表达式简要入门 (阅读 4,364)
  7. 正则转义符汇总 (阅读 4,321)
  8. 使用Oracle正则表达式监控应用到数据库的连接情况 (阅读 4,267)
  9. PHP 正则里面的两个重要技巧 (阅读 4,261)
  10. 正则表达式简介及使用 (阅读 4,162)