head -100 filename
2. 如果你想查看文件的后100行,可以使用tail命令,如:
tail -100 filename 或 tail -n 100 filename
3. 查看文件中间一段,你可以使用sed命令,如:
sed -n '100,200p' filename
这样你就可以只查看文件的第100行到第200行。
截取的文件可以用重定向输入到新的文件中:
head -100 filename >a.txt
也可以在robot里面使用read 打印出来
使用命令:
ps -aux | grep tomcat/8080
方法二:直接使用 netstat -anp | grep portno
即:netstat –anp | grep 8080
查看端口命令 https://www.cnblogs.com/CEO-H/p/7794306.html
linux替换目录下所有文件中的某字符串
比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做:
sed -i "s/zhangsan/lisi/g" `grep zhangsan -rl /modules`
解释一下:
-i 表示inplace edit,就地修改文件
-r 表示搜索子目录
-l 表示输出匹配的文件名
linux查找目录下的所有文件中是否含有某个字符串
查找目录下的所有文件中是否含有某个字符串
find .|xargs grep -ri "php"
查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名
find .|xargs grep -ri "php" -l
ip addr 查看ip地址
截取一段时间内的log日志可以使用sed命令对log文件进行抽取 *** 作:1,sed查看某时间段到现在的系统日志:
sed -n '/May 20 17/,$p' /var/log/messages | less
2,sed 截选时间段日志:
假如日志的格式是--
“2015-05-04 09:25:55,606 后面跟日志内容 ”这样的
目标是需要将05-04的09:25:55 和09:28:08 之间的日志截取出来:
使用sed命令如下:
sed -n ‘/2015-05-04 09:25:55/,/2015-05-04 09:28:55/p’ logfile
这样可以精确地截取出来某个时间段的日志。
如果需要截取的日志太大,达到几个G的话,不能去vi打开文件:
根据之前的日志格式,使用正则表达式:
sed -n ‘/2010-11-17 09:[0-9][0-9]:[0-9][0-9]/,/2010-11-17 16:[0-9][0-9]:[0-9][0-9]/p’ logfile
如果没有问题的话,上面就能筛选出指定的时间段的日志。
(自己)常用的文本文件的行处理命令
示例文件:test.vcf
1、head -n 10 test.vcf
head : 默认是提取文件的前10行,-n 参数可以设定选择文件的前n行
2、tial -n 10 test.vcf
tail : 默认是提取文件的末尾10行, -n 参数可以设定选择文件末尾的n行
3、sed -n '10,20p' test.vcf
sed -n : 随意选择需要查看的行
sed命令是一个面向行处理的编辑器,可以和正则表达式配合使用,附上较全面的sed命令使用教程。
https://man.linuxde.net/sed
4、awk 截取行的指定长度字符串
less test.gz |awk '{if(NR%2==1){print}else{print substr($1,1,75)}}' | gzip -c >test.part.gz
说明:对test.gz文件指定行截取75bp,原来是150bp
5、对n行的第三列求和,求平均值
grep -v ‘#’ test.vcf |sed -n '20,35p' |awk -F '\t' '{sum+=$3n++}END{print sum,sum/n}'
(linux 一行命令计算速度比Python快,简单计算喜欢用linux命令)
记得随时整理使用过的命令,没学过linux,靠着各种帖子,随时需要随时补给,有点懒。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)