实例cat logt.log|sort -s -t '-' -k1n |awk '{print $1;}'|uniq -c|sort -k1nr|head -100 统计文件中出现次数最多的前10个单词 使用linux命令或者shell实现:文件words存放英文单词,格式为每行一个英文单词(单词可以重复),统计这个文件中出现次数最多的前10个单词. cat words.txt | sort | uniq -c | sort -k1,1nr | head -10 主要考察对sort.uniq命令…
1.使用grep linux grep命令在我的随笔linux分类里有过简单的介绍,这里就只简单的介绍下使用grep命令统计某个文件这某个字符串出现的次数,首先介绍grep命令的几个参数,详细参数请自行找资料学习. -a 或 --text : 不要忽略二进制的数据. -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容. -b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字…
统计文件中字符的个数(采用命令行参数) #include<stdio.h> #include<stdlib.h> int main(int argc, char *argv[]) {  char ch;  FILE *fp;  long count=0;    if(argc !=2)  {   printf("文件名是:%s\n",argv[0]);   exit(EXIT_FAILURE);  }  if ((fp=fopen(argv[1],"r…
一.代码实现 import java.io.*; import java.util.*; /** 功能:统计文件中每个字符出现的次数 思路: 1.定义字符读取(缓冲)流 2.循环读取文件里的字符,用一个String类型变量接收(newValue) 3.把newValue变成字符数组       char[] ch = newValue.toCharArray(); 4.遍历ch,将ch中所有的字符存入一个Map集合中(TreeSet),键对应字符,值对应字符出现的次数 5.遍历打印map集合中的…
val fileContent=Source.fromFile("/home/soyo/桌面/ss5.txt").getLines.mkString(",") //这里统计文件中每行最后字符是0的个数 println(fileContent.split(",0,").length) if(fileContent.endsWith(",0")) //判断最后一个字符是不是0,不是0:需要总数减1,是0:不需要改变 println…
1.统计文件test.txt中第2列不同值出现的次数 awk '{sum[$2]+=1}END{for(i in sum)print i"\t"sum[i]}'  test.txt 如文件test.txt第2列的值为"00""01"或"02",执行结果如下: [root@localhost cc]# cat test.txta 00b 01c 00d 02[root@localhost cc]# awk '{sum[$2]+=…
https://blog.csdn.net/qq_28766327/article/details/78069989 在服务器开发中,我们经常会写入大量的日志文件.有时候我们需要对这些日志文件进行统计.Linux中我们可以利用以下命令简单高效的实现这一功能. 需要用到的命令简介 cat命令 cat命令主要有三大功能 1.一次显示整个文件 cat filename 2.创建一个文件 cat > fileName 3.将几个文件合并为一个文件 cat file1 file2 > file 参数: …
1.使用linux命令或者shell实现:文件words存放英文单词,格式为每行一个英文单词(单词可以重复),统计这个文件中出现次数最多的前10个单词 主要考察对sort.uniq命令的使用,相关解释如下,命令及参数的详细说明请自行通过man查看,简单介绍下以上指令各部分的功能: sort:  对单词进行排序 uniq -c:  显示唯一的行,并在每行行首加上本行在文件中出现的次数 sort -k1,1nr:  按照第一个字段,数值排序,且为逆序 sort -nr-n:按照数值的大小排序-r:以…
一.前言 在之前写过一个词频统计的C语言课设,别人说你一个大三的怎么写C语言课程,我只想说我是先学习VB,VB是我编程语言的开始,然后接触到C语言及C++:再后来我是学习C++,然后反过来学习C语言,记得那时候自己在C++中没有好好学习,考试之前疯狂的背代码,然后过了.后来学习C语言的时候,自己知道基础很重要,然后认真学习.这WC这回自己就轻车熟路,记得那时候丁国辉课设老师,问我有多少是自己写的,我说有80%自己写的,然后他让我当场给程序增加一个总的单词数和每一个单词的频率,当时记得自己在旁边改…
统计英文article.txt文件中出现hello这个单词的次数 这个是article.txt文件内容 { hello The Royal Navy is trying hello to play hello down the problem, after first trying to hide it. It is clearly embarrassing. They have hello known about the problem for hello some time but they…
Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1.命令格式: wc [选项]文件... 2.命令功能: 统计指定文件中的字节数.字数.行数,并将统计结果显示输出.该命令统计指定文件中的字节数.字数.行数.如果没有给出文件名,则从标准输入读取.wc同时也给出所指定文件的总统计数. 3.命令参数: -c 统计字节数. -l 统计行数. -m 统计字符数.这个标志不能与 -c 标志一起使用. -w 统计字数.一个字被定义为由空白.…
1. 题目: 一个文本文件中每一行中有一个URL,最多一万行,统计每一个URL的次数,输出到另外一个文件中,每一行前面是URL,后面是个数. 2.代码: package test; import java.io.*; import java.util.HashMap; import java.util.Map; public class FileOperate { public static void readMethod2() throws IOException { String fileN…
1.awk功能和实用形式 awk指定读取文件中的某一行的某个字段 awk      可以设置条件来输出文件中m行到n行中每行的指定的k字段,使用格式如下 awk    'NR==m,NR==n {print $k}'  path/filename m,n,k表示实在的数值.如果要用变量来表示m,n的值,则变量需要用单引号将其引起来. NR,{print }是awk命令在此用法下的规定字段:path/filename表示读取文件的路径及文件名. 当要读取某一行的内容的k字段时,使用格式如下 awk…
把第一列相同的名称的第二列加起来: [root@localhost cc]# cat 1.txtaaa 10 bbb 20aaa 30ccc 40ccc 20ccc 40 [root@localhost cc]# cat 1.txt |awk '{sum[$1]+=$2}END{for(i in sum)print i,sum[i]}'aaa 40bbb 20ccc 100 统计第一列名称出现的次数: [root@localhost cc]# cat 1.txt |awk '{sum[$1]+=…
比如有如下文件test.txt 1  134.102.173.43 2  134.102.173.43 3  134.102.171.42 4  134.102.170.9 要统计出现次数最多的IP可以利用以下shell脚本: cat test.txt | awk '{print $2}' | sort | uniq -c | sort -n -r | head -n 1…
如文件word.txt内容如下: what is you name? my name is zhang san. 要求统计word.txt中出现“is”的次数? 代码如下: PerWordMapper package com.hadoop.wordcount; import java.io.IOException; import java.util.StringTokenizer; import org.apache.hadoop.io.IntWritable; import org.apach…
最近在看shell中有个题目为统计单词的个数,使用了awk功能,代码如下 #!/bin/bash ];then echo "Usage:basename $0 filename" exit fi filename=$ egrep -o "[a-zA-Z]+" $filename | awk '{count[$0]++} END{printf "%-14s %s\n","Word","Count" for(i…
要统计一个字符串出现的次数,这里现提供自己常用两种方法: 1. 使用vim统计 用vim打开目标文件,在命令模式下,输入 :%s/objStr//gn 2. 使用grep: grep -o objStr filename | wc -l 3.如果是多个字符串出现次数,可使用: grep -o 'objStr1\|objStr2' filename|wc -l #直接用\| 链接起来即可…
正则表达式之Pattern和Matcher,请参见转载博客    http://www.cnblogs.com/haodawang/p/5967219.html 代码实现: import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.Map; import java.util.…
grep -E "\b[[:alpha:]]+\b"  /etc/fstab  -o | sort | uniq -c 或 awk '{for(i=1;i<NF;i++){count[$i]++}}END{for(i in count) {print i,count[i]}}' /etc/fstab -E 使用正则进行匹配 \b : backspace 退格 print 参数 表示每行匹配完了回车 [[:alpha:]] : 代表所有字符 sort 去重 uniq -c 排序 -…
import java.text.DecimalFormat; import java.io.File; import java.io.FileReader; import java.io.BufferedReader; import java.io.IOException; import java.io.FileNotFoundException; public class zimu { private void HandleLetter(File file)throws IOExceptio…
name = input("Enter file:") if len(name) < 1 : name = "input.txt" fhand = open(name) counts = dict() for line in fhand: words = line.split() for word in words: # find the value that key is word, if not, return 0 counts[word] = count…
文件d.txt如下内容 ggg 1portals: 192.168.5.41:3260werew 2portals: 192.168.5.43:3260 如何把文件d.txt内容变为如下内容 ggg 192.168.5.41:3260werew 192.168.5.43:3260 解题思路: [root@localhost study]# awk '/port/{print a" "$2}{a=$1}' d.txt ggg 192.168.5.41:3260werew 192.168.…
VS强大的查找功能,可以使用正则表达式来进行查找,这里统计代码行数的原理就是: 在所有指定文件中进行搜索,统计匹配的文本行数. 但是匹配的行需要满足:非注释.非空等特殊非代码行. 使用Ctrl+Shift+F快捷键打开高级查找,可以设置查找内容为正则表达式(需要在下面勾选,同时可以设置查找的文件类型),查找范围请根据需要进行设置. 点击"查找全部"搜索整个解决方案,可以得到查找结果: 最下面会列出匹配行数,这个就是我们所谓的代码行数的估值了...不过这个值也太不准确了... 但是起码有…
参考:https://segmentfault.com/q/1010000012636380/a-1020000012640905 题目:统计文件中//和/* */注释的个数,双引号中的不算 import java.util.ArrayList; import java.util.Scanner; public class NoteCounter { public static void main(String[] args) throws Exception { // TODO 自动生成的方法…
当我们在 Unix/Linux 下使用特定的命令从字符串或文件中读取或编辑文本时,我们经常需要过滤输出以得到感兴趣的部分.这时正则表达式就派上用场了. 什么是正则表达式? 正则表达式可以定义为代表若干个字符序列的字符串.它最重要的功能之一就是它允许你过滤一条命令或一个文件的输出.编辑文本或配置文件的一部分等等. 正则表达式的特点 正则表达式由以下内容组合而成: 普通字符,例如空格.下划线.A-Z.a-z.0-9. 可以扩展为普通字符的元字符,它们包括: (.) 它匹配除了换行符外的任何单个字符.…
生信人的自我修养:Linux命令速查手册 简佐义 ​ 四川大学 生物信息学硕士 科学求真 赢 10 万奖金 · 院士面对面 209 人赞同了该文章 许多人做生物信息学,要么不重视Linux,要么不知道怎么才能学好.翻开厚厚的一本教材,却不知道哪些是重点.Linux的核心知识有哪些,就像英语的核心词汇一样.这篇文章,给你答案. 只要几个小时,掌握生信所需的90%以上的Linux知识,让你一举攻克Linux难关.--生信老司机 man - 获得帮助 man ls # 许多Linux自带命令可以通过m…
shell command shell给一个文件中的每一行开头插入字符的方法:awk '{print "xxx"$0}' fileName shell给一个文件中的每一行结尾插入字符的方法:awk '{print $0"xxx"}' fileName shell给一个文件中的每一行的指定列插入字符的方法:awk '$O=$O" xxx"' fileName 需求: 由于hive表中有大量的临时表,所以决定要想删除它们,这些表全是以test_开头.…
问题描述: 一个文件由若干条记录组成,记录的格式为:“num1 num2”,有时候,需要统计文件中num1对应的num2的总值.处理问题的思路 用传说中的python来处理,很方便.几行代码就可以了. 处理思路: 1:首先定义一个字典,用于存储最终的结果,这是因为字典中的key是唯一的特性. 2:打开文件,按行读取,将每一行的num1当做key,num2当做value. 3:判断字典中是否存在key,如果存在,获取对应的原始值,然后删除对应的key 4:将原始值和记录中的值相加之和,保存到字典中…
突然发现awk原来可以统计同一数据在要处理的文件中所出现的次数.原来的时候为了分析数据还自己写程序,哎,无语,当时还以为自己多强,手工分析不过来的东西写程序处理.现在想来实在是年少轻狂.解决问题嘛,不讲究方式,只要快速高效的完成任务就OK了. 好,今天小试牛刀统计了一下passwd文件中shell部分重复的shell名和出现的次数,看命令: $awk -F: '{a[$7]++}END{for (i in a) print i" "a[i]}' /etc/passwd /bin/fal…