Shell 字符截取命令 awk

  1. awk命令
    # awk ‘条件1{动作1} 条件2{动作2}….‘ 文件名
    一般使用关系表达式作为条件
    动作:1、格式化输出 2、流程控制语句
  2. 处理cut命令无法截取空格的列

    例子:截取出磁盘使用率

    df -h | grep "sda1" | awk ‘BEGIN{print "this is sda1 hard use persent:"} {print $5}‘ | cut -f 1 -d "%"

  3. BEGIN关键字

    a、在所有动作处理之前执行,可在输出文本首行添加脚本注释(如上例)

    b、自定义截取字符,使用FS,必须添加BEGIN,删除首行

  4. FN内置变量

    自定义截取字符

    awk ‘{FS=":"}{print $1 "\t" $3}‘ /etc/passwd

    需要修改为

    awk ‘BEGIN{FS=":"}{print $1 "\t" $3}‘ /etc/passwd

  5. END关键字

    命令执行完毕,在输出文本末尾添加END注释

    awk ‘END{print "This is End Test!!"}{FS=":"}{print $1 "\t" $3}‘ /etc/passwd

  6. 关系运算符

    显示磁盘占有率超过5%的磁盘

    df -h | awk ‘$5>5{print $1 "\t" $5}‘ | cut -f 1 -d "%"

时间: 2024-11-05 06:30:33

Shell 字符截取命令 awk的相关文章

[Shell]字符截取命令:cut, printf, awk, sed

------------------------------------------------------------------------------------------- [cut命令] cut [选项] 文件 -f 列号        ( --field 提取第几列 ) -d 分隔符    ( --delimiter 按照指定分隔符分割列 ) vi user.txt ( 行间分隔符为制表符Tab,cut的默认分割符是制表符 ) 提取系统的用户名和uid: cut -d ":&quo

Shell 字符截取命令 Cut

1.Cut 命令 # cut [选项] 文件名 选项 : -f 列号 提取第几列   -d 分隔符,按照指定分隔符分割列 2.例子 cut -f 1,4 -d ":" /etc/password 表示以":"作为分隔符 提取第一列和第四列的数据 3.提取Linux下所有普通用户的用户名 cat /etc/passwd | grep "/bin/bash" | cut -f 1 -d ":" | grep -v root gre

第10章 Shell编程(2)_字符截取命令

2. 字符截取命令 2.1 cut字段提取命令(grep提取行,cut提取列) (1)cut命令:#cut [选项] 文件名 选项: -f 列号:提取第几列: -d 分隔符:按照指定分隔符分割列,默认是制表符分隔. (2)应用举例 //测试文件(student.txt) ID Name gender PHP Linux MySQL Average 1 ZS M 82 95 86 87.66 2 LS F 74 96 87 85.66 3 WW M 99 83 93 91.66 ①#cut –f

Shell编程之字符截取命令

AWK命令 awk '条件1(动作1)条件2(动作2)...' 文件名 条件(pattern)一般使用关系表达式作为条件x>10判断x是否大于10x>=10大于等于x<=10小于等于 动作(Action)-格式化输出-流程控制语句 awk使用示例:awk '{printf $1 "\t" $2 "\n"}' awk 'BEGIN{printf "test"}{printf $1}' //在输出语句前输出指定字符串 awk 'EN

Linux Shell编程 - 字符截取命令

01.字段提取命令 cut  =>   cut [选项] 文件名 -f 列号: 提取第几列 -d 分隔符:按照指定分割符分割列 例如:cut  -f  2,4(列号:,逗号可以多行提取)  student.txt cut  -d “:” -f 1,3 /etc/passwd 02.格式化输出命令 printf 命令  => printf  ‘输出类型输出格式’  输出内容 输出类型: %ns:输出字符串.n 是数字指代输出几个字符 %ni:输出整数.n 是数字指代输出几个数字 %m.nf:输出

linux shell编程之字符截取命令cut、awk、printf、sed、sort

cut和awk可以提取列,grep提取行 命令名称:cut -f 提取行,-d 分隔符 缺陷:不能使用空格作为分隔符,tab可以,具体分隔符也可以. 命令名称:printf 命令名称:awk 比cut强大的多. sed命令: sort排序:

探索字符截取命令之---awk命令

这里给大家提个建议,在学习awk命令之前先掌握printf命令的用法. printf '输出类型输出格式' 输出内容 输出类型: %ns 输出字符串 %ni 输出整数 %m.nf 输出小数 输出格式: -n 换行 -t tab键 简单的说,awk的出现就是为了弥补cut命令的不足,对于用空格制作的表格中,cut命令不再有用. 例如:查看磁盘使用率,用cut命令截取字符串就不起作用的 这时候,awk命令正好就弥补了cut命令在这方面的缺陷. 例如:截取根目录的使用率 df -h | grep "/

Shell编程 之 字符截取命令

1. 字段(列)提取命令:cut  [选项]  文件名 选项:  - f  列号(提取第几列)   - d  分隔符(按照指定分隔符分割列) [[email protected] sh]# cat student.txt ID Name Gender Mark 1 alex male 11 2 boby male 22 3 cyan male 33 4 dauge male 44 [[email protected] sh]# cut -f 2 student.txt # -f 设置列号 Nam

shell 字符截取

Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从左边开始删除最后(最右边)一个