第二波命令:
显示行号的6种方法、chkconfig、tar、awk、cut过滤字符串、ps配合wc查看过滤进程
1、打印配置文件nginx.conf内容的行号及内容,该如何做?
生成序列
花括号的作用
例1:echo {1..10}
1 2 3 4 5 6 7 8 9 10
例二:echo {01..10}
01 02 03 04 05 06 07 08 09 10
例三:echo stu{1..5}
stu1 stu2 stu3 stu4 stu5
例四:echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
显示行号的几种方法
1) echo输出序列内容并多行显示,保存到指定文件
注:xargs -n 多少列
echo stu{1..5} |xargs -n3 > /data/nginx.conf
2)cat -n查看文件并显示行号
[root@georgetest ~]# cat -n /data/nginx.conf
1 stu1 stu2 stu3
2 stu4 stu5
3)vim 里面加set nu显示行号,set nonu取消显示行号
:set nu :set nonu
4)grep -n
表示任意一个字符。
-n 给grep命令找到的内容显示行号
grep -n "." /data/test.txt
5)awk显示行号
注:RN 表示显示行号,$0 表示这一行的内容
awk '{print NR,$0}' /data/test.txt
6)sed显示行号
= 表示显示行号
sed '=' /data/test.txt |xargs -n2
2、装完系统后,希望让网络文件共享服务NFS(iptables),仅在3级别上开机自启动,怎么做?
关闭或开启某个运行级别开机自启的服务
chkconfig --level 3 iptables off
注:也能同时指定多个运行级别,如345,同时指定345运行级别
3、 tar 打包压缩
1)tar 创建压缩包
创建压缩包常见错误提示:
tar:Removing leading '/' fron hard link targets
不是错误,绝对路径====>相对路径,是为了安全,防止解压时候覆盖原来的文件。
解决方法:使用相对路径打包,先cd到文件路径中,再打包
tar zcvf /tmp/la.tar.gz /etc/hosts
格式:tar zcvf 压缩包(框) 文件 文件/目录
参数:z === gzip 通过gzip进行压缩,使用tar后,一般以tar.gz结尾
创建包
v === verbose 显示执行过程
指定的压缩包(归档)
2)tar 查看压缩包内容
tar ztf /tmp/etc.tar.gz
注: t === list 查看压缩包内容
3)tar 解压缩包
tar zxvf /tmp/etc.tar.gz -C /tmp/
注: x === extract解压缩
默认解压到当前目录
-C === specify指定压缩位置
4)tar打包并排除掉/etc/service这个文件
tar zcvf /tmp/paichu.tar.gz etc --exclude=etc/services
注:--exclude= 指定要排除的文件
-X或--exclude-from= 被排除的文件名列表(将排除的文件写入)
tar ztf /tmp/paichu.tar.gz |grep "services"
注:查看一下是否排除成功
4、过滤出文件中"test"和"4309583"字符串?
1)sed过滤
sed 's#I am ##g' test.txt |sed 's#,myqq is##g'
test 4309583
注:用空格替换了I am
2) awk过滤
awk -F "[, ]" '{print $3,$5,$6}' test.txt
test is 4309583
awk默认分隔符为空格
表示第一列, $0 表示这一行所有,$NF 表示最后一列
在awk逗号作为空格
指定分隔符,空格也是,[]里面任何一个字符都算分隔符
,"$3,$NF}' awk中想显示某个字符,放在双引号中
awk -F "[, ]" '{print $3","$NF}' test.txt
test,4309583
3) cut过滤
sed 's#,# #g' test.txt|cut -d " " -f3,6
cut -d 指定分隔符,每次只能指定一个分隔符
-f 显示某一列,-f1 表示第1列,-f3,5 表示第3列和第5列,-f2-5 表示第2到第5列
5、wc查看文件的行数
wc -l /etc/services
10774 /etc/services
统计多少行
-c 统计多少个字符
-w 统计多少个单词
6、ps查看sshd进程是否开启
ps -ef |grep "/sshd"|wc -l
2
PID:process id 进程对应的进程号
CMD: 进程名
7、egrep过滤文件中的字符
egrep "1521|3306" /etc/services
egrep 是正则表达式的高级版,等于grep -E
| :在这里表示或者的意思,如果是grep的话,只会把它当做一个字符
linux grep显示上下几行 linux grep 显示行号
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
linux grep 行号逆序 linux grep行数
一、前言 最近需要查询大日志文件的时候,每次打开vim,cat之类的都会卡死,但是需要查看符合条件的共有多少行数据,这可愁死我了,下面列出一些常用的匹配查询命令。二、常用的搜索命令1、grep搜索 grep 参数 文件名 | head //从头查找 grep 参数 文件名 | wc- l //查看符合条件的有多少行 cat 文件名 |grep 参数$ //输出以该参数结
linux grep 行号逆序 grep 与条件 grep 模糊匹配 linux 搜索 linux 搜索文件