位置: IT常识 - 正文

在Linux上使用GNU sed的方法(gnu/linux)

编辑:rootadmin
很多朋友再问这样一个问题,如何在Linux 上使用 GNU sed;今天小编为大家分享的是在Linux上使用GNU sed的方法;希望可以帮助到大家!有需要的朋友一起去看看吧... 17-01-09

推荐整理分享在Linux上使用GNU sed的方法(gnu/linux),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux如何使用gcc,linux如何使用gcc,linux中的gnu的含义,gnu linux编程指南,linux gnuplot 命令,linux中的gnu,linux怎么使用gcc,linux中的gnu的含义,内容如对您有帮助,希望把文章链接给更多的朋友!

Linux 基金会宣布了一个全新的 LFCS(Linux 基金会认证系统管理员(Linux Foundation Certified Sysadmin))认证计划。这一计划旨在帮助遍布全世界的人们获得其在处理 Linux 系统管理任务上能力的认证。这些能力包括支持运行的系统服务,以及第一手的故障诊断、分析,以及为工程师团队在升级时提供明智的决策。

处理 Linux 中的文本流

Linux 将程序中的输入和输出当成字符流或者字符序列。在开始理解重定向和管道之前,我们必须先了解三种最重要的I/O(输入和输出(Input and Output))流,事实上,它们都是特殊的文件(根据 UNIX 和 Linux 中的约定,数据流和外围设备(设备文件)也被视为普通文件)。

在 > (重定向操作符) 和 | (管道操作符)之间的区别是:前者将命令与文件相连接,而后者将命令的输出和另一个命令相连接。

# command >file

# command1 | command2

由于重定向操作符会静默地创建或覆盖文件,我们必须特别小心谨慎地使用它,并且永远不要把它和管道混淆起来。在 Linux 和 UNIX 系统上管道的优势是:第一个命令的输出不会写入一个文件而是直接被第二个命令读取。

在下面的操作练习中,我们将会使用这首诗——《A happy child》(作者未知)

使用 sed

sed是流编辑器(stream editor)的缩写。为那些不懂术语的人额外解释一下,流编辑器是用来在一个输入流(文件或者管道中的输入)执行基本的文本转换的工具。

sed最基本的用法是字符替换。我们将通过把每个出现的小写 y 改写为大写 Y 并且将输出重定向到 ahappychild2.txt 开始。g 标志表示 sed 应该替换文件每一行中所有应当替换的实例。如果这个标志省略了,sed 将会只替换每一行中第一次出现的实例

基本语法:

#sed's/term/replacement/flag'file

我们的样例:

在Linux上使用GNU sed的方法(gnu/linux)

#sed's/y/Y/g' ahappychild.txt > ahappychild2.txt

如果你要在替换文本中搜索或者替换特殊字符(如 /,\,&),你需要使用反斜杠对它进行转义。

例如,我们要用一个符号来替换一个文字,与此同时我们将把一行最开始出现的第一个 I 替换为 You。

#sed's/and/\&/g;s/^I/You/g' ahappychild.txt

在上面的命令中,众所周知 ^(插入符号)是正则表达式中用来表示一行开头的符号。

正如你所看到的,我们可以通过使用分号分隔以及用括号包裹来把两个或者更多的替换命令(并在它们中使用正则表达式)连接起来。

另一种 sed 的用法是显示或者删除文件中选中的一部分。在下面的样例中,将会显示 /var/log/messages 中从6月8日开始的头五行。

#sed-n '/^Jun 8/ p'/var/log/messages |sed-n 1,5p

请注意,在默认的情况下,sed 会打印每一行。我们可以使用 -n 选项来覆盖这一行为并且告诉 sed 只需要打印(用 p来表示)文件(或管道)中匹配的部分(第一个命令中指定以“Jun 8” 开头的行,第二个命令中指定一到五行)。

最后,可能有用的技巧是当检查脚本或者配置文件的时候可以保留文件本身并且删除注释。下面的单行 sed 命令删除(d)空行或者是开头为#的行(| 字符对两个正则表达式进行布尔 OR 操作)。

#sed'/^#\|^$/d' apache2.conf

uniq 命令

uniq命令允许我们返回或者删除文件中重复的行,默认写到标准输出。我们必须注意到,除非两个重复的行相邻,否则uniq 命令不会删除他们。因此,uniq 经常和一个前置的 sort 命令(一种用来对文本行进行排序的算法)搭配使用。默认情况下,sort 使用第一个字段(用空格分隔)作为关键字段。要指定一个不同的关键字段,我们需要使用 -k 选项。

样例

du –sch /path/to/directory/* 命令将会以人类可读的格式返回在指定目录下每一个子文件夹和文件的磁盘空间使用情况(也会显示每个目录总体的情况),而且不是按照大小输出,而是按照子文件夹和文件的名称。我们可以使用下面的命令来让它通过大小排序。

#du-sch /var/* | sort -h

你可以通过使用下面的命令告诉 uniq 比较每一行的前6个字符(-w 6)(这里是指定的日期)来统计日志事件的个数,而且在每一行的开头输出出现的次数(-c)。

#cat/var/log/mail.log |uniq-c -w6

上一页12 下一页 阅读全文
本文链接地址:https://www.jiuchutong.com/zhishi/278182.html 转载请保留说明!

上一篇:npscheck.exe - npscheck是什么进程 有什么用

下一篇:Win11 Dev预览版出现奇怪 Bug:电量能充到 100% 以上(windows 11预览版)

  • 荣耀50se怎么设置返回键(荣耀50se怎么设置语音唤醒功能)

    荣耀50se怎么设置返回键(荣耀50se怎么设置语音唤醒功能)

  • qq音乐一起听有历史记录吗(QQ音乐一起听有麦克风吗)

    qq音乐一起听有历史记录吗(QQ音乐一起听有麦克风吗)

  • vivo手机怎么取消隐藏桌面变形器图标(vivo手机怎么取消专注模式)

    vivo手机怎么取消隐藏桌面变形器图标(vivo手机怎么取消专注模式)

  • 钉钉投票是匿名的吗(钉钉投票匿名可以看出来投谁了么)

    钉钉投票是匿名的吗(钉钉投票匿名可以看出来投谁了么)

  • 荣耀手机通话自动录音在哪里设置(荣耀手机通话自动录音怎么关闭)

    荣耀手机通话自动录音在哪里设置(荣耀手机通话自动录音怎么关闭)

  • 微信二维码收款记录能删吗(微信二维码收款怎么联系付款人)

    微信二维码收款记录能删吗(微信二维码收款怎么联系付款人)

  • 计算机病毒按寄生方式主要分为哪三种(计算机病毒按寄生方式分为哪三类)

    计算机病毒按寄生方式主要分为哪三种(计算机病毒按寄生方式分为哪三类)

  • 抖音改资料会降低权重吗(抖音修改资料会有影响吗)

    抖音改资料会降低权重吗(抖音修改资料会有影响吗)

  • 手机进水后屏幕触摸没有反应怎么办(手机进水后屏幕失灵乱跳乱点怎么解决)

    手机进水后屏幕触摸没有反应怎么办(手机进水后屏幕失灵乱跳乱点怎么解决)

  • 手机处理器叫soc还是cpu(手机soc包括)

    手机处理器叫soc还是cpu(手机soc包括)

  • start windows normally是什么意思(start windows normally后黑屏)

    start windows normally是什么意思(start windows normally后黑屏)

  • 支付宝性别怎么修改(支付宝性别怎么隐藏好友)

    支付宝性别怎么修改(支付宝性别怎么隐藏好友)

  • pr出现未响应还要等吗(pr未响应等待有用吗)

    pr出现未响应还要等吗(pr未响应等待有用吗)

  • 微信滴滴怎么提前约车(微信滴滴怎么提前预约打车)

    微信滴滴怎么提前约车(微信滴滴怎么提前预约打车)

  • ip协议是可靠的吗(ip协议是可靠还是不可靠)

    ip协议是可靠的吗(ip协议是可靠还是不可靠)

  • 抖音号被永久封怎么注销(抖音号被永久封禁了,手机号可以重新注册吗?)

    抖音号被永久封怎么注销(抖音号被永久封禁了,手机号可以重新注册吗?)

  • ipv6的ip地址有多少位(ipv6地址是什么)

    ipv6的ip地址有多少位(ipv6地址是什么)

  • ps怎么画动漫(ps怎么画动漫人物)

    ps怎么画动漫(ps怎么画动漫人物)

  • 微信运动步数有上限吗(微信运动步数有的好友不显示)

    微信运动步数有上限吗(微信运动步数有的好友不显示)

  • 为什么qq搜索不到账号(为什么QQ搜索不到)

    为什么qq搜索不到账号(为什么QQ搜索不到)

  • vuevlog怎么调倍速(vue vlog怎么调整速度)

    vuevlog怎么调倍速(vue vlog怎么调整速度)

  • 华为nova3可以开空调吗(华为nova3可以开多少帧)

    华为nova3可以开空调吗(华为nova3可以开多少帧)

  • 小米6多少克(小米多少克可以取样)

    小米6多少克(小米多少克可以取样)

  • 【网络安全】文件包含漏洞--使用session进行文件包含(网络安全文章1000字)

    【网络安全】文件包含漏洞--使用session进行文件包含(网络安全文章1000字)

  • 公司支付的房租押金怎么入账
  • 跨年增票能开红冲吗?
  • 注册税务师考试科目
  • 生育津贴是否需要纳税
  • 定金冲抵货款怎么做分录
  • 捐赠支出增值税
  • 建筑业收到预收款预缴增值税
  • 人工费能不能抵扣进项税
  • 住宿费进项税分录
  • 领用原材料 会计分录
  • 商业地产运营成本核算
  • 接受土地使用权作为投资属于什么凭证
  • 材料暂估入库后怎么做账
  • 采购商品验收入库流程
  • 运输费计入采购成本的分录
  • 按税收规定计算的扣除额公益性捐赠
  • 存货的主要内容包括什么
  • 施工费增值税税率是9%
  • 接收境外汇款是什么意思
  • 购买护肤品取得的发票能入账吗?
  • 机器设备的拆除方法
  • 利润表中财务费用可以为负数吗
  • 增值税普票当月开错了怎么办
  • 企业合并中或有负债确认后期调整的项目
  • win7系统管理员密码忘了怎么办
  • opware12.exe - opware12进程是什么文件 有什么用
  • 企业缴纳职工社保是否可以缴纳三险
  • vue怎么做兼容
  • 超分辨率图像复原
  • 接受股权投资账务处理
  • php匿名函数为何不匿名
  • 漏记收入 罚款
  • 交易性金融资产属于流动资产
  • CNN卷积神经网络/手写数字识别[VHDL][MATLAB]带源码
  • 魔改toolbox
  • 视同销售的情况有哪些?
  • 怎么调整利润分配
  • 虚开增值税发票不是也要缴税吗
  • 富文本功能
  • React props全面详细解析
  • 长期资产包含哪些
  • 税负率包含哪些税种
  • 国家企业信用公示信息公示
  • 用于职工福利的固定资产折旧
  • 增值税抵扣凭证怎么做
  • access数据库用户名和密码
  • 工资发放用现金
  • 营业账簿印花税申报流程
  • 手机里面的发票怎么查
  • 残保金需要计提吗怎样做分录
  • 城镇土地使用税怎么算
  • 资源税代扣代缴取消时间
  • 公司银行开户费用怎么报销
  • 编制现金流量表应以什么为基础
  • 低值易耗品库存
  • 股权转让如何办理
  • 一般纳税人农业企业免企业所得吗
  • 给员工发中秋福利的用词
  • 建筑公司异地施工
  • 事业单位小规模纳税人咨询服务的税率
  • 应付账款怎么做平
  • mysql 5.7.12 winx64安装配置方法图文教程
  • freebsd软件安装
  • windows个性化设置在哪里
  • linux检查更新
  • linux在实际工作中的应用
  • win7怎么在桌面添加时钟
  • win8英文版安装中文语言包
  • android游戏开发框架
  • python怎么输出日志
  • js鼠标移入事件
  • 如何使用nodejs
  • java多线程最佳实践
  • 如何让批处理文件运行不显示
  • Unity3D游戏开发毕业论文
  • js闭包的用处
  • python socket模块
  • 建筑工程提前投入使用
  • 三证合一的资料
  • 金税三期可以申报个税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设