Linux如何显示文件指定行数的内容;显示第一行、中间几行和最后几行
1、tail -n +/-数字 文件名
2、head -n 数字 文件名
3、sed -n "开始行,结束行p" 文件名
4、sed -n '1p;20,40p; "显示第一行和20到40行'
5、sed -n 7p file_name : 显式第7行
6、cat file_name | awk 'NR==1 || NR==2 || NR==10' 显式第1、2、10行
统计行数的几种方法:
wc -l test.txt显示文件的行数
sed -n '$=' test.txt 显示文件的行数 -n表示只打印匹配的结果
grep -c "" filename -c, --count print only a count of matching lines per FILE
awk 'END{print NR}' filename awk的BEGIN和END表示匹配开始之前匹配结束之后执行的动作
效率对比:
生成测试所需文件:awk 'BEGIN{for(i=0;i<10000000;i++)print i}'>>test
wc方法: time wc -l test
1、time wc -l test 用时0.026s
1000000 test
real 0m0.014s
user 0m0.009s
sys 0m0.003s
2、grep方法,用时0.080s
time grep -c "" test
1000000
real 0m0.041s
user 0m0.037s
sys 0m0.002s
3、用时0.159s
time sed -n '$=' test
1000000
real 0m0.080s
user 0m0.073s
sys 0m0.006s
4、用时0.095s
time awk 'END{print NR}' test
1000000
real 0m0.049s
user 0m0.042s
sys 0m0.004s
结论:wc>grep>awk>sed
参考:1、http://www.linuxidc.com/Linux/2012-06/63680.htm
2、http://man.linuxde.net/sed
3、http://man.linuxde.net/awk
Linux如何显示文件指定行数的内容;显示第一行、中间几行和最后几行的更多相关文章
- 快速扫描文本文件,统计行数,并返回每一行的索引位置(Delphi、C#)
由项目需要,需要扫描1200万行的文本文件.经网友的指点与测试,发现C#与Delphi之间的差距并不大.不多说,列代码测试: 下面是Delphi的代码: //遍历文件查找回车出现的次数 functio ...
- [译]line clampin让文字在指定的行数内省略号显示
说明 (1)原文:http://css-tricks.com/line-clampin/ (2)非直译 需求: 当文字长度超过N行时,文字后面自动用省略号补齐. 比如,你有如下的HTML代码: < ...
- CSS把容器中的内容限制行数,在超过行数后,在最后一行显示"..."
<style type="text/css"> .main{ width: 400px; background-color: #3498db; display: -we ...
- linux替换文件指定字符串前面的内容
sed 's/.*user_id/user_id/' wechat_log2 > target_log
- NSLog 打印出方法函数,行数,内容
#if DEBUG #define NSLog(FORMAT, ...) fprintf(stderr,"\nfunction:%s line:%d content:%s\n", ...
- Linux命令(21)查看文件的行数
在 linux 系统中没有在 windows 系统中那么方便的点点鼠标就可以操作文件了,对文件的各种操作都必须使用各种命令来完成.比如有时候我们需要在不查看文件内容的情况下需要知道该文件有多少行.这个 ...
- Linux 命令之split(将一个大文件根据行数平均分成若干个小文件)
把一个 txt 文件导入到 excel 中,但是 excel 单列支持的行数为 1048576,而我需要导入的 txt 文件总共有 7945674 ,我们无法一次性将整个 txt 文件里面的内容导入到 ...
- CSS文本超出指定行数省略显示
单行: overflow: hidden; text-overflow: ellipsis; white-space: nowrap; 2行: font-size: 17px;overflow: hi ...
- linux命令行快速统计文件(压缩文件)的行数
统计(文件|压缩文件)的行数 zcat file.gz | sed -n '$=' #迅速.直接打印出多少行.-n 取消 ...
随机推荐
- 【Codeforces Round #476 (Div. 2) [Thanks, Telegram!] C】Greedy Arkady
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举那个人收到了几次糖i. 最好的情况显然是其他人都只收到i-1次糖. 然后这个人刚好多收了一次糖 也即 (i-1)kx + x & ...
- tarjan - tarjan的几种用法
前言 tarjan是一种神奇的算法, 它可以在线性时间内求强联通分量/缩点/LCA/割点/割边/... 但由于博主咸鱼,暂时掌握不了这么多, 先讲讲其中最简单的一些. 概述 tarjan是以DFS为基 ...
- 深入浅出理解Javascript原型概念以及继承机制(转)
在Javascript语言中,原型是一个经常被讨论到但是有非常让初学者不解的概念.那么,到底该怎么去给原型定义呢?不急,在了解是什么之前,我们不妨先来看下为什么. Javascript最开始是网景公司 ...
- sql中group by 和having 用法解析
--sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的 ...
- Python 爬取图书图片和地址
#-*- coding:utf-8 -*- import xlwt import urllib import re def getHtml(url): page = urllib.urlopen(ur ...
- [uiautomator篇] 如何获取apk的包名 博客模板
Android自动化学习笔记:获取APK包名的几种方法 ------------------------------------------------------------------------ ...
- [git 学习篇] 提交文件
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256916071d ...
- Tinkoff Internship Warmup Round 2018 and Codeforces Round #475 (Div. 2)
A. Splits time limit per test 1 second memory limit per test 256 megabytes input standard input outp ...
- Pandas对多列进行升降序排列
df = pd.DataFrame(rows, columns = ["llx", "lly", "urx", "ury" ...
- [luoguP2764] 最小路径覆盖问题(最大流 || 二分图最大匹配)
传送门 可惜洛谷上没有special judge,不然用匈牙利也可以过的,因为匈牙利在增广上有一个顺序问题,所以没有special judge就过不了了. 好在这个题的测试数据比较特殊,如果是网络流的 ...