美文网首页
四剑客命令集合

四剑客命令集合

作者: linux_龍 | 来源:发表于2019-06-12 15:12 被阅读0次

1.find 查找文件

根据时间信息查找数据:

find命令参数
-type 文件类型 f文件 d目录
-size 大小
-path 指定一个路径信息
-prune 进行修剪(删除)
-o 多个条件之间是或者的关系
-a 多个条件之间是并且的关系
-print 将修剪的目录页不要显示
-inum 按inode好查找
-maxdepth 最大层数

 find /oldboy -path "/oldboy/oldboy02" -prune -o -type f -name "*.txt"  -print
find /oldboy -type f -mtime  +30    --- 找出30天以前的数据
 find /oldboy -type f -mtime  -30   --- 找出最近30天的数据
find /oldboy -type f -mtime  30     --- 找出距离当前第30天的数据

2.grep 过滤

环境准备

[root@oldboy62-0 /]# cat oldgirl

ldboy01
oldboy02
oldgirl03
oldboy01
oldGIRL02
oldgirl03
oldbo04

grep -i 忽略大小写进行过滤

[root@oldboy62-0 /]# grep -i 'oldgirl' oldgirl
oldgirl03
oldGIRL02
oldgirl03

grep -A 2 显示过滤的指定行,以及后几行的信息 -A ==after

[root@oldboy62-0 /]# grep -A2 'oldgirl' oldgirl
oldgirl03
oldboy01
oldGIRL02
oldgirl03
oldbo04

grep -B 2 显示过滤的指定行,以及前几行的信息 -B ==before

[root@oldboy62-0 /]# grep -B2 'oldgirl' oldgirl
ldboy01
oldboy02
oldgirl03
oldboy01
oldGIRL02
oldgirl03

grep -C 2 显示过滤的指定行,以及前后几行信息 -C ==center

[root@oldboy62-0 /]# grep -C2 'oldgirl' oldgirl
ldboy01
oldboy02
oldgirl03
oldboy01
oldGIRL02
oldgirl03
oldbo04

grep -v 取反

[root@oldboy62-0 /]# grep -v 'oldboy' oldgirl

ldboy01
oldgirl03
oldGIRL02
oldgirl03
oldbo04

3.sed增 删 改 查

sed 命令参数
-n 取消默认输出
-r 支持扩展正则
-i 在指定行上面添加内容
-a在指定行下面添加内容
p 输出信息
d 删除文件信息
s 取代-替换
g 将所有匹配到的内容都做替换
c 修改替换指定的整行信息

环境准备
cat >person.txt<<EOF
 101,oldboy,CEO
 102,zhaoyao,CTO
 103,Alex,COO
 104,yy,CFO
 105,feixue,CIO
 3p
 EOF
将第三行信息显示
[root@oldboy62-0 ~]# sed -n 3p person.txt
    103,Alex,COO

将有oldboy和有Alex的行进行显示

[root@oldboy62-0 ~]# sed -n '/oldboy/,/Alex/p' person.txt
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO

将第三行信息进行删除

[root@oldboy62-0 ~]# sed '3d' person.txt
101,oldboy,CEO
102,zhaoyao,CTO
104,yy,CFO
105,feixue,CIO
3p

在第3行后面增加新的一行 内容 oldboy62

[root@oldboy62-0 ~]# sed '3aoldboy62' person.txt
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
oldboy62
104,yy,CFO
105,feixue,CIO
3p

在第5行前面增加新的一行 内容 oldboy62

[root@oldboy62-0 ~]# sed '5ioldboy62' person.txt
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
oldboy62
105,feixue,CIO
3p

在文件最后一行后面,添加多行信息

[root@oldboy62-0 ~]#  sed '$aoldboy62\noldboyedu62' person.txt 
101,oldboy,CEO
102,zhaoyao,CTO
103,Alex,COO
104,yy,CFO
105,feixue,CIO
3p
oldboy62
oldboyedu62

将123456 信息 显示 为 <123456>

[root@oldboy62-0 ~]# echo 123456|sed -r 's#(.*)#<\1>#g'
<123456>

将123456 信息 显示 为 <123><456>

[root@oldboy62-0 ~]# echo 123456|sed -r 's#([0-9]{3})#<\1>#g'
<123><456>

将123456 信息 显示 为 <1><2><3><4><5><6>

[root@oldboy62-0 ~]# echo 123456|sed -r 's#([0-9])#<\1>#g'
<1><2><3><4><5><6>

3.awk 擅长取行 修改编辑文件

awk参数
-F 指定分隔符
-V 设置变量信息
gsub 替换指定列信息
BEGIN 特殊的运算命令
擅长统计

环境准备
cat > oldboy.txt <<EOF    捐款 1   2   3
Zhang  Dandan    41117397    :250:100:175
Zhang  Xiaoyu    390320151   :155:90:201
Meng   Feixue    80042789    :250:60:50
Wu     Waiwai    70271111    :250:80:75
Liu    Bingbing  41117483    :250:100:175
Wang   Xiaoai    3515064655  :50:95:135
Zi     Gege      1986787350  :250:168:200
Li     Youjiu    918391635   :175:75:300
Lao    Nanhai    918391635   :250:100:175
EOF

显示xiaoyu的姓氏和ID号码

[root@oldboy62-0 ~]# awk '/Xiaoyu/{print $1 $3}' oldboy.txt
Zhang390320151

姓氏是zhang的人,显示他的第二次捐款金额及他的名字

[root@oldboy62-0 ~]# awk '/Zhang/{print $2 $4}' oldboy.txt
Dandan:250:100:175
Xiaoyu:155:90:201

显示所有以41开头的ID号码的人的全名和ID号码

[root@oldboy62-0 ~]# awk '$3~/^41/{print $1 $2 $3}'  oldboy.txt
ZhangDandan41117397
LiuBingbing41117483

显示所有ID号码最后一位数字是1或5的人的全名

[root@oldboy62-0 ~]# awk '/5$|1$/{priboy.txt
ZhangDandan
ZhangXiaoyu
WuWaiwai
LiuBingbing
WangXiaoai
LaoNanhai

显示文件中第二行,第三列的信息

[root@oldboy62-0 ~]# awk 'NR==2{print $3}' oldboy.txt
390320151

在系统中用于计算数值

[root@oldboy62-0 ~]# awk "BEGIN{print 3+4}" oldboy.txt
7

统计/etc/passwd文件中最后一列有/sbin/nologin的出现了多少次

[root@oldboy62-0 ~]# awk -F ":" '$NF~/nologin$/{i++}END{print i}' /etc/passwd
18

把/etc/passwd第三列.第四列的数值相加

[root@oldboy62-0 ~]# awk -F":" '{print $3,$4}' /etc/passwd|awk '{i=i+$1;x=x+$2}END{print i+x}'
73030

相关文章

  • 四剑客命令集合

    1.find 查找文件 根据时间信息查找数据: find命令参数-type 文件类型 f文件 d目录-size 大...

  • 2019-07-25

    操作系统命令三剑客-awk 一: 三剑客命令awk概述gawk : pattern scanning and pr...

  • 常用命令

    字符串命令 string类型 列表命令 list类型 集合命令 set类型 有序集合命令 zset类型 散列命令...

  • Day19操作系统三剑客命令-awk

    01.三剑客awk命令概念介绍、* 02.三剑客awk命令使用方法 print:输出指定的信息gusb : 替换指...

  • Redis 集合(Set) 命令

    Redis 集合(Set) 命令 下表列出了 Redis 集合基本命令: 1> sadd 命令:向集合添加一个或多...

  • Redis基本命令(四)--集合类型

    Redis基本命令(四)--集合类型 1、增加/删除元素 2.获取集合中的所有元素 3.判断元素是否在集合中 4....

  • Redis实战-Redis五种数据类型(四-1 字符串)

    本节主要内容 字符串命令 列表命令 集合命令 散列命令 有序集合命令 1.字符串(string)   Redis ...

  • Redis中的排序

    1.有序集合的集合操作 集合类型提供了强大的集合操作命令,但是如果需要排序就要用到有序集合类型。Redis为了命令...

  • Shell编程、part5

    本节内容 1. 三剑客简介 2. sed命令详解 3. awk命令详解 文本处理三剑客 在 Shell 下使用这些...

  • 《千山客》

    太有为居三剑客, 斗有谓书四剑客, 去向何从是剑客。 不去山里睡剑客, 就去山里睡剑客, 无需报名睡剑客。 这首诗...

网友评论

      本文标题:四剑客命令集合

      本文链接:https://www.haomeiwen.com/subject/brdlfctx.html