linux命令(二)——显示行号,chkconfig,tar,sed,awk,grep,egrep,cut,wc,ps

第二波命令:

显示行号的6种方法、chkconfig、tar、awk、cut过滤字符串、ps配合wc查看过滤进程

1打印配置文件nginx.conf内容的行号及内容,该如何做?

生成序列

花括号的作用 {}:生成序列,连续输入显示到屏幕,包括数字和字母

1echo {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

2cat -n查看文件并显示行号

[root@georgetest ~]# cat -n /data/nginx.conf

     1 stu1 stu2 stu3

     2 stu4 stu5

3vim 里面加set nu显示行号,set nonu取消显示行号

:set nu     set nonu

4grep -n

 . 表示任意一个字符

-n  grep命令找到的内容显示行号

grep -n "." /data/test.txt

5awk显示行号

注:RN 表示显示行号,$0 表示这一行的内容

awk '{print NR,$0}' /data/test.txt

6sed显示行号

=  表示显示行号

sed '=' /data/test.txt |xargs -n2

 

2装完系统后,希望让网络文件共享服务NFS(iptables),仅在3级别上开机自启动,怎么做?

关闭或开启某个运行级别开机自启的服务

chkconfig --level 3 iptables off

注:也能同时指定多个运行级别,如345,同时指定345运行级别

 

3 tar 打包压缩

1tar 创建压缩包

创建压缩包常见错误提示:

tar:Removing leading '/' fron hard link targets

不是错误,绝对路径====>相对路径,是为了安全,防止解压时候覆盖原来的文件。

解决方法:使用相对路径打包,cd到文件路径中,再打包

 

tar zcvf /tmp/la.tar.gz /etc/hosts

格式:tar zcvf 压缩包(框)  文件 文件/目录

参数:z === gzip   通过gzip进行压缩,使用tar后,一般以tar.gz结尾

  c === create 创建包

  v === verbose 显示执行过程

  f === file   指定的压缩包(归档)

2tar 查看压缩包内容

tar ztf /tmp/etc.tar.gz

: t === list 查看压缩包内容

3tar 解压缩包

tar zxvf /tmp/etc.tar.gz  -C /tmp/

: x === extract解压缩

默认解压到当前目录

-C === specify指定压缩位置

4tar打包并排除掉/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"字符串?

1sed过滤

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默认分隔符为空格

 $1 表示第一列, $0 表示这一行所有,$NF 表示最后一列

 awk逗号作为空格

 -F 指定分隔符,空格也是,[]里面任何一个字符都算分隔符

 '{print ""$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 

 

5wc查看文件的行数

wc -l /etc/services

10774 /etc/services

 -l 统计多少行

-c 统计多少个字符

-w 统计多少个单词

 

6ps查看sshd进程是否开启

ps -ef |grep "/sshd"|wc -l

2

PIDprocess id 进程对应的进程号

CMD: 进程名

 

7egrep过滤文件中的字符

 egrep "1521|3306" /etc/services

egrep  是正则表达式的高级版,等于grep -E

| :在这里表示或者的意思,如果是grep的话,只会把它当做一个字符

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值