zoukankan      html  css  js  c++  java
  • sed 过滤和替换文本函数

    功能:Linux sed 命令是利用脚本来处理文本文件。

    sed 可依照脚本的指令来处理、编辑文本文件。

    Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

    格式:

    sed [OPTION]... {script-only-if-no-other-script} [input-file]...

    sed [选项] '地址 命令' file

    选项

    • -e<script>或--expression=<script> 以选项中指定的script来处理输入的文本文件。// 可以加多个指令
    • -f<script文件>或--file=<script文件> 以选项中指定的script文件来处理输入的文本文件。
    • -h或--help 显示帮助。
    • -n或--quiet或--silent 仅显示script处理后的结果。// 和动作p一起使用
    • -V或--version 显示版本信息。
    • -i 修改
    • -r 支撑正则

    动作说明

    • a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
    • c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
    • d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
    • i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
    • p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
    • s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

    随便编写了一个文档做演示 文档内容如下

    实例

    1. d 删除 删除第一行内容 sed '1d' txt.txt   只是测试显示效果而已 并非真的删除 !!!

    2. 使用 -i 参数 实现真实操作  sed -i '1d' txt.txt

     3. d删除 从第几行开始删除 删除到第几行 用,隔开 sed '2,5d' txt.txt  不加 -i参数 都只是测试 !!!

    4.  删除匹配到的行  匹配开头为1 的行  sed '/^1/d' txt.txt

     5. 打印指定行 到 第一个指定的行  打印从第五行开始 到 第一个以7开头的行结束 sed -n '5,/^7/p' txt.txt    -n 和 p 一般一起使用 p 是打印的意思

    6. p 打印奇数行偶数行

     7. -e 参数 执行多个命令

     8.-r 扩展正则

    9.  s替换 g全局替换

    10 .s前面写的是行 

    11.  提取IP地址把不需要的东西替换为空

  • 相关阅读:
    《数据结构
    《数据结构
    《数据结构
    《算法
    《linux 进程管理》- ps/top/kill/killall/nice
    《linux 字符处理》- grep/sort/uniq/tr/paste/sed/awk
    《linux 文件目录》- touch/rm/mv/cat/head/tail/cp/mkdir/chmod/chown/find/locate/which/whereis/tar
    MySQL优化必须调整的10项配置
    PV-UV
    linux+nginx+mysql+php高性能服务器搭建
  • 原文地址:https://www.cnblogs.com/gaiting/p/12001233.html
Copyright © 2011-2022 走看看