2021-01-24


在这里插入图片描述
先上思维导图!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

文本操作

cut 切割数据

cut -d “分隔符” -f 列 /路径/文件
./ 代表当前目录
…/ 代表上级目录 也就是同级目录

#以冒号作为分隔符 切割文件passwd 输出3-5列的字段 也就是【3,5】闭区间的字段
cut -d ":" -f 3-5 /etc/passwd
#识别时分隔符是: 输出时分隔符是..
cut -d ":" -f 3 --output delimiter=".." passwd
  • -d --divide=分隔符
  • -f --fields=列数list
    3-5 表示[3,5]的闭区间
    -2 表示前两列
    3- 第三列到最后一列
    1,3,7 第1,3,7列
  • -s, --only-delimited 不显示 没有 分隔符 的 行

sort 排序

排序:分为字典序和数值序

#按照第一列的开头字母顺序排序
sort sort.txt
#以空格为字段分隔符 按照第二列的开头字母顺序排序
sort -t ' ' -k 2 sort.txt
#以空格为字段分隔符 按照第三列的数值正序排序
sort -t ' ' -k 3 -n sort.txt
  • -t ‘【分隔符】’ 自定义分隔符
  • -k 指定排序的列
  • -n number 按照数值顺序排序

wc (word count)

#代表8行line 21个单词word 67个字节char
wc sort.txt
 8 21 67 sort.txt

sed(stream行 editor)

#在第一行追加一行 写hw
sed "1a\hello world" sed.txt
#删除第二行
sed "2d" sed.txt
#删除每一行
sed "d" sed.txt
#匹配行内含有0-9的行,只打印符合条件的行用-n
sed -n "/[0,9]/p" sed.txt
#将filesystem替换FS 且忽略大小写+全局
sed "s/filesystem/FS/gi" sed.txt
#只id:3:initdefault:这一行里的3替换成5
sed "s/3/5/" inittab #会文件全行替换
sed -r "s/(id:)3(:initdefault:)/\15\2/" inittab
#注意一定要\15\2 不然是全行替换成5
#取名对称原则 s/替换前char1/替换后char2 两个char都要\\
  • -i 直接修改insert源文件
  • -r 扩展正则表达式 替换\

字符串内填写(冒号内)

  • d 删除delete符合条件的行
  • p 显示符合条件的行
  • a 在指定的行后追加append新行
  • s 查找并替换
    i忽略大小写
    g全局替换(非全局替换时只替换行内第一个)

awk 文本分析

这命令强大 三个人发明 所以是AWK三个人首字母

  • 支持自定义变量 数组a[1], a[tom], map[key]
  • 可以比grep查找,sed编辑更为强大
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页