shell字符串截取

cut 命令

grep 在文件中提取行,cut awk sed 提取列

  • cut [选项] 文件名
  • -f 提取第几列
  • -d 分隔符 默认分隔符为制表符,当列间隔为空格间隔,应使用awk
shell字符串截取_第1张图片

printf 命令

  • printf '输出类型输出格式' 输出内容
    输出类型
  • %ns 输出字符串,n是数字代表输出几个字符
  • %ni 输出整数,n是代表输出几个数字
  • %m,nf 输出浮点数,m和n是数字,m代表几个数字,n代表几个小树,如%8,2f,表示600000.00数字

输出格式

  • \a 输出警告声音
  • \b 输出退格键
  • \f 清楚屏幕
  • \n 换行
  • \r 回车
  • \t 水平制表符
  • \v 垂直制表符
shell字符串截取_第2张图片

awk 命令

awk '条件一{动作一} 条件2{动作二} ...' 文件名
条件 一般使用关系表达式作为条件 x>10
动作 格式化输出,流程控制语句

shell字符串截取_第3张图片

print 不需要加换行符


shell字符串截取_第4张图片

df -h 查看系统容量使用情况
grep 截取行
awk 提取
cut 截取

加入begin 开始之前处理

手动指定分隔符,要加入begin


shell字符串截取_第5张图片

shell字符串截取_第6张图片

END 在所有数据处理之后,在处理END

FS=":" 用来指定分隔符

条件判断

sed 命令

sed 是一种几乎包括在所有unix平台的轻量流编辑器。sed主要是用来将数据进行选取,替换,删除和新增的命令。

  • sed [选项] '[动作]' 文件名
  • -n一般sed命令会把所有数据都输出到屏幕,如果加入此选项,则会把sed命令处理的行输出到屏幕
  • -e 允许对输入的数据应用多条sed命令编辑
  • -i 用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出

动作

  • a\ : 追加,在当前行后添加一行或者多行,添加多行,除最后一行,每行末尾都需要用\来完结
  • c: 行替换,用c后面的字符串替换原数据行,替换多行时,除最后一行外,每行末尾都要用\代表数据未完结
  • i: 插入,在当前行插入一行或者多行,插入多行,除最后一行外,每行都需要用\ 表示数据未完结
  • d:删除,删除指定行
  • p: 打印,输出指定的行
  • s: 字符串替换,用一个字符替换另一个字符
    输出指定的行


删除2,3行


接收管道符


字符处理命令

sort [选项] 文件名

  • -f 忽略大小写
  • -n 以数值型进行排列,默认使用字符串排序
  • -r 反向排序
  • -t 指定分隔符,默认分隔符是制表符
  • -kn[,m] 按照指定的字段范围排序,从n开始m结束,默认到行尾

sort /etc/passwd
sort -r /etc/passwd

shell字符串截取_第7张图片

按数值排序


shell字符串截取_第8张图片

统计命令 wc

wc [选项] 文件名

  • -l 只统计行数
  • -w 只统计单词
  • -m 只统计字符数

你可能感兴趣的:(shell字符串截取)