shell三剑客

1、cut 此命令不改变源文件内容,只是将需要的打印到控制台

在文件中负责剪切数据用。cut命令从文件的每一行剪切字节、字符和字段,并将这些字节、字符和字段输出
1)用法
cut 参数 filename 默认分隔符是制表符

cut -d 分隔符 -f 列数 file
2)参数
-f 列行提取第几列
-d 分隔符,按照指定分隔符分割列

###########示例
##空格为分隔符,切出2,3列
cut -d ’ ’ -f 2,3 cut.txt

##选取系统PATH变量值,从第二个冒号后所有的路径
[root@wanghaha shell_study]# echo $PATH|cut -d : -f 3- ## 3- 表示第3个之后所有的
/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

##切取IP
[root@wanghaha shell_study]# ifconfig ens33|grep 'inet ’ |cut -d ’ ’ -f 10
192.168.29.111

2、sed

sed是一个流编辑器,一次处理一行内容,处理时,把当前的行存储在临时缓冲区,称其为模式空间,
接着用sed命令处理缓冲区的内容,处理后缓冲区内容送往控制台,接着处理下一行。文件内容不改变,
除非使用重定向存储输出
1)用法
sed 参数 ‘command’ filename

2)参数
-e 直接在指令模式进行sed的动作编辑
-i 加这个参数,会改变源文件内容
3)命令功能
a 新增,a的后面可以接字符串,在下一行出现
d 删除
s 查找并替换

##示例—注意,此处4个例子都没有改变源文件
1>在文件cut.txt第2行下一行增加wanghaha
sed “2a wanghaha” cut.txt
2>删除cut.txt包含wanghaha的行
sed “/wanghaha/d” cut.txt
3>替换文件cut.txt中wanghaha为linshi
sed “s/wanghaha/linshi/g” cut.txt
4>删除文件的第2行,并且替换文件cut.txt中wanghaha为linshi
sed -e “2d” -e “s/wanghaha/linshi/g” cut.txt

3、awk

文件逐行读入,默认以空格为分隔符每行切片,切开的部分再做处理

1)参数
-F 指定分隔符
-v 赋值一个用户定义变量

示例
1>passwd中以root开头所有行,并输出第7列
awk -F: ‘/^root/{print $7}’ passwd
2>passwd中以root开头所有行,输出1和7列,逗号隔开
awk -F: ‘/^root/{print $1","$7}’ passwd
3>只显示passwd第1和7列,逗号隔开,且在所有行前加user,shell在最后行添加"wanghaha,ceshi"
awk -F: ‘BEGIN{print “user,shell”}{print $1","$7}END{print “wanghaha,ceshi”}’ passwd
4>将passwd文件中用户id增加数值1并输出
awk -F : -v i=1 ‘{print $3+i }’ passwd ##此处定义了i
5>计算文件第二列数值和
cat file |awk -F ’ ’ ‘{sum+=$2}END{print sum}’
2)awk内置变量
FILENAME 文件名
NR 已读记录数 行号
NF 浏览记录的域的个数(切割后,列的个数)

#示例
awk -F : ‘{print FILENAME “,” NR “,” NF }’ passwd

2>查询passwd文件中空行所在的行号
awk ‘/^$/{print NR}’ passwd

4、sort

将文件进行排序,并将结果标准输出
1)参数
-n 依照数值大小排序
-r 以相反顺序排序
-t 设置排序时所用分隔符号
-k 指定需要排序的列
-u 去重

shell之cut ---sed---awk--sort相关推荐

  1. Shell工具 cut sed awk sort

    Shell工具(重点) cut cut的工作就是"剪",具体的说就是在文件中负责剪切数据用的.cut 命令从文件的每一行剪切字节.字符和字段并将这些字节.字符和字段输出. 1.基本 ...

  2. Shell ❀ 三剑客 - Grep + Sed + Awk

    文章目录 八.三剑客 - Grep + Sed + Awk 1.Grep - 过滤 1.1 常用grep参数 1.2 使用方法 2.Sed - 行匹配 2.1 执行原理 2.2 常见语法 2.3 使用 ...

  3. linux脚本求命令行上整数和,shell脚本--cut命令与awk简单使用

    cut:对内容进行列切割 -d 后面的是分割符,表示用什么符号来分割符来分割列,分隔符使用引号括起来: -f后面跟着要选择的字段列,从1开始,表示第一列,如果要多列,可以用逗号分隔 : -c参数后面跟 ...

  4. linux生产文本处理掌握这些就够了:awk,gawk,sed,grep,sort

    shell脚本最常见的一个用途就是处理文本文件.检查日志文件.读取配置 文件.处理数据元素,shell脚本可以帮助我们将文本文件中各种数据的日常处理任务自动化.但仅靠shell脚本命令来处理文本文件的 ...

  5. linux shell cut sed

    cut是以每一行为一个处理对象的,这种机制和sed是一样的.(关于sed的入门文章将在近期发布) 2 cut一般以什么为依据呢? 也就是说,我怎么告诉cut我想定位到的剪切内容呢? cut命令主要是接 ...

  6. Shell 编程之 sed 与 awk

    一.正则表达式 1.正则表达式概述 使用单个字符串来描述.匹配一系列符合某个句法规则的字符串,由普通字符与特殊字 符组成,一般在使用脚本编程.文件编辑器中,如 php.python.shell 等,简 ...

  7. linux shell sed awk 命令(2)-awk

    linux shell sed awk 命令(2)-awk awk语法格式: awk [选项] -f program-file [ -- ] file ... 选项: -F fs, --field-s ...

  8. cut\grep\awk\sed命令详解

    cut\grep\awk\sed命令详解 1.cut命令详解及实例 (1)作用:提取文件中指定的列 语法格式:cut  选项  文件名   (2)选项作用:      -d 分隔符     按照指定的 ...

  9. sed awk 笔记(二)

    都说sed awk 运维人员的必备工具.今天起开始整理相关笔记.首先认识一下这两个东西. 共性:使用相同的语法 [address]/pattern/action/flag 都是面向字符流的.从一个文件 ...

  10. linux grep sed awk

    linux 文本编辑命令grep sed awk(转)     grep grep (global search regular expression(RE) and print out the li ...

最新文章

  1. 面向完全初学者的Unity和C#游戏开发学习教程
  2. hadoop-11-ambari-server安装
  3. 2014搜狗前端面经【B事业部】
  4. Ubuntu16.04使用的问题和解决方案集锦
  5. C和C++实务精选丛书
  6. 【Google 行销课】产品关键词的搜索门道
  7. RabbitMq(七) Topic模式介绍及代码示例
  8. 你真的会玩SQL吗?你所不知道的 数据聚合
  9. umi脚手架搭建的项目_还在从零开始搭建项目?手撸了款快速开发脚手架!
  10. Ndarry 拉伸为一个list
  11. “小程序”的最佳入口位置--关于微信小程序的思考笔记
  12. 分子动力学模拟软件_分子模拟软件Discovery Studio教程(十九):虚拟氨基酸突变提高结合亲和力...
  13. 破解庞加莱猜想数学家曾四五年未发表论文
  14. java公交路线查询微信小程序源码
  15. 深度linux软件中心 qq,ubuntu上安装QQ(包括多个软件安装方法)
  16. 一个假猪套神器:NET CAT-NC
  17. 鸿蒙OS原子化服务卡片原理和架构分析
  18. 视频教程-《信息学竞赛-C语言》 DAY30-清华尹成老师-C/C++
  19. bzoj4372 烁烁的游戏 动态点分治+线段树
  20. 《MySQL必知必会》读书笔记

热门文章

  1. 三维点云课程(六)——三维目标检测
  2. EAUML日拱一卒 总目录
  3. java基础知识总结,javaweb参考资料大全
  4. ColorOS怎么切换Android,OPPO怎么升级ColorOS11 OPPO升级ColorOS11方法
  5. python可以自学吗需要什么基础-自学python需要什么基础,要掌握哪些知识?
  6. [学位论文写作] 将一级标题数字1改为“第一章”
  7. 什么是可变参数列表?以及可变参数列表是如何实现的?
  8. 【论文阅读】【三维目标检测】在Range view上做3D目标检测
  9. 慕课网视频中的代码---3-4 Minst手写体识别
  10. 解决Mysql执行删除操作报错:1093的问题