位置: 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预览版)

  • 苹果13怎么设置打电话不断网(苹果13怎么设置指纹密码)

    苹果13怎么设置打电话不断网(苹果13怎么设置指纹密码)

  • 华为手机怎么拍证件照(华为手机怎么拍实况照片)

    华为手机怎么拍证件照(华为手机怎么拍实况照片)

  • 微信朋友圈怎么发九宫格照片(微信朋友圈怎么发长视频)

    微信朋友圈怎么发九宫格照片(微信朋友圈怎么发长视频)

  • 微博手机号码已经不用了怎么办(微博手机号码已经不用了密码也忘了)

    微博手机号码已经不用了怎么办(微博手机号码已经不用了密码也忘了)

  • uhd620显卡性能(uhd620显卡什么级别)

    uhd620显卡性能(uhd620显卡什么级别)

  • 微信历史记录怎么导入新手机(微信历史记录怎么删除)

    微信历史记录怎么导入新手机(微信历史记录怎么删除)

  • 老honor手机卡槽在哪里(honor手机的卡槽在哪里)

    老honor手机卡槽在哪里(honor手机的卡槽在哪里)

  • 钉钉怎么关闭直播(钉钉怎么关闭直播提示)

    钉钉怎么关闭直播(钉钉怎么关闭直播提示)

  • 微信语音耳机模式怎么切换扬声器(微信语音耳机模式怎么变成扬声器)

    微信语音耳机模式怎么切换扬声器(微信语音耳机模式怎么变成扬声器)

  • qq怎么不加好友就直接聊天(qq怎么不加好友发文件)

    qq怎么不加好友就直接聊天(qq怎么不加好友发文件)

  • vivox21和x23有什么区别(vivox21和vivox23)

    vivox21和x23有什么区别(vivox21和vivox23)

  • 数据库系统中数据的最小单位是(数据库系统中数据的最小单位)

    数据库系统中数据的最小单位是(数据库系统中数据的最小单位)

  • 微信群邀请几小时过期(微信邀请群时效是多久)

    微信群邀请几小时过期(微信邀请群时效是多久)

  • 怎么看有几个人特别关心我(b站怎么看有几个人)

    怎么看有几个人特别关心我(b站怎么看有几个人)

  • AirPods Pro怎么开启降噪模式(airpods pro怎么开耳返)

    AirPods Pro怎么开启降噪模式(airpods pro怎么开耳返)

  • 手机qq怎么看黑名单(手机QQ怎么看黑钻时间)

    手机qq怎么看黑名单(手机QQ怎么看黑钻时间)

  • 计算机的特点是什么(属于计算机的特点是)

    计算机的特点是什么(属于计算机的特点是)

  • 淘宝直播怎设置悬浮窗(淘宝直播怎设置管理员)

    淘宝直播怎设置悬浮窗(淘宝直播怎设置管理员)

  • 华为mate30几个卡槽(华为mate30与mate30pro的区别)

    华为mate30几个卡槽(华为mate30与mate30pro的区别)

  • 手机做的ppt电脑能打开吗(手机做的PPT电脑打不开)

    手机做的ppt电脑能打开吗(手机做的PPT电脑打不开)

  • 抖音大长腿功能在哪(抖音长腿功能怎么没有了)

    抖音大长腿功能在哪(抖音长腿功能怎么没有了)

  • 苹果x无面容可以修吗(苹果x无面容可以改成有面容吗)

    苹果x无面容可以修吗(苹果x无面容可以改成有面容吗)

  • 华为p30pro关闭应用建议(华为p30如何关闭应用)

    华为p30pro关闭应用建议(华为p30如何关闭应用)

  • 乐视视频如何取消自动续费(乐视视频如何取消续费)

    乐视视频如何取消自动续费(乐视视频如何取消续费)

  • u盘装系统后系统不能进入一直黑屏的原因分析及解决方法(u盘装系统系统放哪里)

    u盘装系统后系统不能进入一直黑屏的原因分析及解决方法(u盘装系统系统放哪里)

  • 目的税包括
  • 企业所得税的计算公式
  • 假发票是怎么开出来的
  • 零申报资产负债表年初与期末数
  • 社保所属期和缴费期相差一个月吗
  • 职工的补助金需交税吗
  • 个体工商户怎么注册
  • 企业年金个人所得税扣除标准
  • 当月少计提工资下月怎么处理?
  • 政府制定优惠政策
  • 算项目人工成本的公式
  • 没有成本票如何做账
  • 餐饮服务行业会计分析
  • 银行授信额度如何分配
  • 去办税大厅清卡需要带什么
  • 员工饭卡充值是哪个部门做
  • bitlocker功能
  • 挖机所有权需要办理什么手续吗
  • 固定资产减值测试时预计其未来现金流量不应考虑的因素
  • 预收账款可以挂账多久要交税
  • 小规模纳税人可以开增值税专用发票吗
  • 结转人工费会计分录
  • linux zen3
  • PHP:oci_new_collection()的用法_Oracle函数
  • ajax无刷新技术
  • php文件锁并发 性能
  • php表单的作用是什么
  • 职工教育经费列支范围规定
  • 财政发票可以报销吗
  • 代销方式是什么意思
  • 凯恩kane
  • 文化事业建设费的征收标准
  • unix命令大全详解
  • 增值税免税收入账务处理
  • 帝国cms升级到7.5后不能发布内容信息
  • sql优化常用的15种方法
  • 电子发票开出后如何查看
  • 旅行社的增值税税率
  • 上市公司收购其他股票
  • 财务报表上期金额是指什么意思
  • 专票认证是在开票软件里吗
  • 公对公转账在手机上怎么操作
  • 国有资产无偿划转协议
  • 长期股权投资损益调整是什么意思
  • 固定资产清理在贷方怎么结转
  • 开办幼儿园的流程图
  • 商品买一送一应该怎么写
  • 出口退税进项票跨月勾选
  • 印花税税率是多少
  • 环境保护税法自什么时候起施行
  • 贷款服务可以抵扣进项税额吗
  • 收派服务与快递服务区别
  • 改制基准日对人员的影响
  • mysql查询包含
  • sqlgun
  • win10邮件和日历怎么更新新版outlook
  • Solaris 远程磁带备份步骤
  • 守护者联盟单机游戏
  • linux怎么禁用命令
  • 联想系统win8
  • Ubuntu 14.04安装java的方法以Ubuntu14.04为例
  • 怎么通过mac连接wifi
  • window8.1重装系统
  • mac sip怎么打开
  • Extjs4 GridPanel的主要配置参数详细介绍
  • 将jquery.qqFace.js表情转换成微信的字符码
  • node.js console.log
  • unity打包安卓apk
  • jquery函数定义
  • wmic命令详解
  • 简易最新版本
  • Linux CentOS系统下安装node.js与express的方法
  • Developing for Android, IV: The Rules: Networking
  • python安装后怎么用
  • 天津怎么网上交电费
  • 济南个税起征点是多少2021
  • 浙江省税务局领导介绍
  • 天津本田天虹90摩托车库存
  • 企业卖旧房如何计算缴纳土地增值税
  • 国家税务总局河南税务局官网查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设