磁盘管理 | awk

内容概要

  • 磁盘管理
  • awk

磁盘管理

磁盘管理就是把硬盘挂载到linux文件系统中

磁盘分区:1.fdisk 分区2TB以下磁盘,最多4个分区
        2.gdisk 多少大小的磁盘都可分区,最多128个分区

查看磁盘分区:df -h
查看本机分区:lsblk

磁盘分区帮助选项:n 新建分区
               p 打印分区表
               w 写入磁盘并退出
               q 退出
               d 删除一个分区

分区挂载步骤:1.关机
            2.添加硬盘
            3.分区fdisk或gdisk
            4.格式化文件系统mkfs.xfs
            5.挂载mount

awk

awk用来格式化文本

语法格式:awk [参数] [处理规则] [操作对象]
参数:-F 指定分隔符(默认为空格)

awk生命周期:1.接受一行作为输入
           2.把刚刚读进来的文本进行分解
           3.使用处理规则处理文本
           4.输入一行复制给$0,到处理完成
           5.把处理完之后的数据给END{}再次处理

awk预定义变量:1.$0 当前行
             2.$n 第n行
             3.NF 记录当前行数字段数
             4.NR 记录行号,不是文本内容在文件内部的行号
             5.FS 指定文本内容分隔符(默认空格)
             6.OFS 指定打印分隔符(默认空格)

awk处理规则执行流程:1.BEGIN{}
                  2.//
                  3.{}
                  4.END{}

awk中的函数:1.print 打印
           2.printf 格式化打印
           3.%s 字符串
           4.%d 数字
           5.+ 右对齐
           6.- 左对齐

awk中的定位:1.正则表达式
           2.比较表达式
           3.算数表达式
           4.逻辑表达式
           5.条件表达式
           6.范围表达式

流程控制:1.if
          单个 if(){}
          两个if(){}else{}
          多个if(){}else if(){}else{}
        2.for
          for(i="初始值";条件判断;游标){}
        3.while
          while(条件判断){}

案例

1.打印奇数行
awk -F: 'NR % 2 == 1{print $0}' /etc/passwd

2.属组加属主ID大于1000
awk -F: '$3 + $4 > 1000{print $0}' /etc/passwd

3.打印第三行
awk -F: 'NR == 3{print $0}' /etc/passwd

4.全部打印6行
awk -F: '{for(i=6;i>0;i--){print $0}}' /etc/passwd

5.全部打印5行,下一行是!!!!!!!!!
awk -F: '{if(NR % 6 == 0){print "!!!!!!!!!"}print $0}' /etc/passwd

image

posted @ 2021-12-22 19:58  一览如画  阅读(65)  评论(0)    收藏  举报