zoukankan      html  css  js  c++  java
  • 常见的Linux命令--字符串截取命令

    一、cut命令

      cut: 按照字表符或者指定分隔符截取字符串

      -d 指定分隔符

      -f 指定截取的列,多个列之间用“,”分隔

      示例:cut  -d  ":" -f1,3   /etc/passwd

    二、print和printf命令

      命令格式:printf  "输出格式输出类型" “输出内容”

      printf: 输出指定的内容,通常与awk命令连用

      %ns   表示输出字符串类型的个数

      %ni    表示输出整数类型的个数

      %m.nf    表示输出浮点数类型

      print: 与printf一样,但是在输出字符串时会自动换行

      示例:printf  "%s %s %s "   1 2 3

    三、awk命令

      awk:可以按空格截取字符串

      命令格式:awk  '{条件1}{动作1}{条件2}{动作2}'

      BEGIN   在截取之前处理

      END  在截取之后处理

      FS  指定分隔符

      示例:df -h | grep vda1 | awk '{printf $1 " " $5}' |cut -d "%" -f1     # 使用awk统计根分区的使用率

         awk 'BEGIN{print "开始统计三班的成绩"}END{print "成绩统计结束"}{print  $2 " " $5}'   student.txt    # 统计学生的成绩

            cat  /etc/passwd | grep  /bin/bash | grep  -v root | awk 'BEGIN{FS=":"}{print $1 " " $5}'     # 查找系统中的普通用户

    四、sed命令

      命令格式:sed [选项] ‘[动作]’

      sed: 将其他命令的输出作为输出的流编辑器

      -n  只输出sed命令编辑过的信息

      -e  多个命令一起操作,多个操作之间用“;”隔开

      -i   保存修改后的内容到原文件

      动作命令包括

      a  在指定行后面追加指定字符串

      i    在指定行前面插入指定字符串

      d   删除指定行

      c   按行替换

         s   按字符串替换   格式为:/s/新字符串/旧字符串/g

      p   打印行

       示例:sed  '2p'  ./sugar/student.txt    # 打印student.txt的第二行

          sed  '2a hahaha' student.txt   # 在student.txt文件的第二行后面追加字符串hahaha

             sed  '2i  hahahaxixixi'  student.txt   # 在student.txt文件第二行前插入hahaha和xixixi

             sed  ‘2,4d’   student.txt    # 删除student.txt文件的第二行到第四行

             sed  '2c  no such man' student.txt   # 将student.txt的第二行替换为no such man 

             sed '2s/HubuSugar/igoodful/g'  student.txt  # 将student.txt文件的HubuSugar替换成igoodful

             sed  -e '2d;3c no such man'  student.txt    # 删除student.txt文件的第二行,同时将第三行替换为no such man

         

  • 相关阅读:
    详细解说python垃圾回收机制
    Vue-- 监听路由参数变化,数据无法更新 解决方案
    解决“只能通过Chrome网上应用商店安装该程序”的方法 ---离线安装谷歌浏览器插件
    axios POST提交数据的三种请求方式写法
    axios POST提交数据的三种请求方式写法
    vue+element后台系统 自己动手撸(一)
    element-ui中 table表格hover 修改背景色
    解决vue的{__ob__: observer}取值问题
    Vue [__ob__: Observer]取不到值问题的解决
    VUE监听路由变化的几种方式
  • 原文地址:https://www.cnblogs.com/HubuSugar/p/11800890.html
Copyright © 2011-2022 走看看