mingche 发表于 2018-8-21 06:01:20

学习之路(四)浅谈:shell弱类型编程语言;sed命令用法及练习

sed基本用法  sed:stream EDitor 行编辑器
  sed:模式空间
  默认不编辑源文件 仅对模式空间中的数据做处理;
  而后处理结束后,将模式空间打印至屏幕
  sed ‘Address command’file
  -n静默模式
  -i 直接该原文件
  -e SCRIPT -e SCRIPT:可同时执行脚本
  -f 指定路径下的脚本一个一个用在file中
  -r 表示使用扩展正则表达式
  Command:
  d:删除符合条件的行
  p:显示符合条件的行
  a \string 在指定行前面追加新行
  i \string 在指定行后面追加新行
  r FILE 将指定文件的内容添加至指定文件
  w FILE 指定范围内的内容另存为指定文件
  's/pattem/string/' 查找并替换 #其中的/用@也可代替
  g:全局替换
  i:忽略字符大小
  sed练习题:
  1.删除/tmp/test1文件中行首的空白符
  sed -r 's@^[[:space:]]@@' /tmp/test1
  2.替换/etc/inittab文件中“id:3:initdefault:”一行中的数字改为5
  sed -r 's@\(id:\)\(:initdefault:\)@\15\2@g' /etc/inittab
  3.删除/tmp/test1文件中的空白行
  sed '/^$/d' /tmp/test1
  4.删除/tmp/test1文件中开头的#号
  sed -r 's@#@@' /tmp/test1
  5.删除/tmp/test1文件中开头的#号及后面的空白字符,但要求后面必须有空白字符
  sed -r 's@^#+[[:space:]]+@@' /tmp/test1
  6.删除/tmp/test1文件以空白字符后面跟#号的行中的开头的空白符及#号
  sed -r 's@^[[:space:]]+#@@' /tmp/test1

页: [1]
查看完整版本: 学习之路(四)浅谈:shell弱类型编程语言;sed命令用法及练习