用wordcloud分析一年来终端的命令行记录

博主通过Python的wordcloud库分析了一年来的Arch Linux zsh命令行记录,发现ls和cd是最常使用的命令。尽管结果有趣,但出现了重复关键词问题。文章附带了命令出现频率的统计,指出掌握20个常用命令即可基本掌握Linux操作。
摘要由CSDN通过智能技术生成

最近看到一个python函数库,wordcloud(词云),觉得十分有意思,于是想要用来分析一些自己收集的数据。

从去年8月份开始使用archlinux, shell用的是zsh,这个shell好处很多(详情请见https://wiki.archlinux.org/index.php/Zsh), 其中之一是为每一个目录建立一个zhistory文件,用于存储每个目录下的命令行历史,所有的文件在~/.zsh_history目录下。

于是乎,我想用wordcloud来分析这一年多以来我都使用了哪些命令,

代码如下:

#!/usr/bin/env python

import os 
from wordcloud import WordCloud
import sys


if len(sys.argv) == 1:
    print("Please input a filename")
else:
    # Read the whole text.
    text = open(sys.argv[1]).read()
    # Generate a word cloud image
    wordcloud = WordCloud(background_color='black',width=1200,height=800,margin=2).generate(text)
    wordcloud.to_file(sys.argv[1]+".png")

得到的结果如下:
这里写图片描述
效果还不错,但就是不知道为什么好多重复的关键词,ls,cd重复了好多遍,有人知道的话希望在留言中告知我一下,感激不尽。

图中很明显地看出, ls, cd这两个命令使用最为频繁,在所有的命令当中,前几个命令总频次占比如下(共116554个):

命令排名总占比
前134.8%
前255.9%
前569.5%
前1078.0%
前2085.9%

因此,掌握20个命令就能基本掌握Linux是有道理的。。。

附录

排名前十的命令是:
ls cd vim m eog c mv ev rm du
(m,c,ev分别是自定义的make, vim *c *h以及evince)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值