ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

sed,awk与正则表达式

2020-01-26 22:00:52  阅读:206  来源: 互联网

标签:自定义 正则表达式 命令 sed awk 例子 print


sed擅长取行,awk命令擅长取列

sed

  • 格式sed <option> <script> <file>

  • option

    • -e: 执行多个命令
      • 命令之间必须用分号隔开
      • 命令末尾和分号之间不能有空格
      • 例子:sed -e 's/brown/green; s/dog/cat' data.txt
    • -f: 从文件读取命令
      • 每个命令一行,无需分号
      • 例子:sed -f script.sed data.txt
    • -n:不产生命令输出,用print命令完成输出
  • script

    • **s **: 用第二个斜线间的字符串替换第一个斜线间的字符串
      • 例子:echo "a dog" | sed 's/dog/cat/'
  • file

    • 不指定则默认为STDIN
  • sed不会修改文件数据,而是把修改后的数据发送到STDOUT

awk

  • 格式awk <options> <program> <file>

  • option

    • -f: 从文件读取命令
      • 必须以{}开头结尾
      • 每个命令一行,无需分号
    • -F: 自定义字段分隔符
      • 默认分隔符是空白符
      • 例子:awk -F: '{print $1}' /etc/passwd
  • program

    • 可以自定义变量
      • 引用自定义变量时不需要$
      • 默认变量
        • $0代表整个文本行
        • $1代表第1个数据字段
        • $n代表第n个数据字段
    • 关键字
      • BEGIN:在处理数据前执行后面定义的脚本
        • 两段命令仍需在同一单引号内
        • 例子:awk 'BEGIN {print "hello world!"} {print $0}'
      • END:在处理数据后执行后面定义的脚本
    • 在命令之间加分号可以执行多个命令
      • 例子:echo "Hello World" | awk '{$2="golang"; print $0}'
  • file

    • 不指定则默认为STDIN

    正则表达式

_萤火 发布了161 篇原创文章 · 获赞 19 · 访问量 5万+ 私信 关注

标签:自定义,正则表达式,命令,sed,awk,例子,print
来源: https://blog.csdn.net/winter_wu_1998/article/details/104089802

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有