位置: 编程技术 - 正文

Shell脚本学习指南之查找与替换介绍(shell脚本 教程)

编辑:rootadmin

3.1 查找文本grep:使用POSIX定义的基本正则表达式(BRE)。egrep:使用扩展正则表达式(ERE)。fgrep:快速grep。使用优化的算法,匹配固定字符串而非正则表达式。

POSIX标准将这三个改版整合成一个grep程序。

$ who | grep -F austen使用-F选项查找固定字符串。事实上,只要匹配的模式里未含有正则表达式的meta字符,则grep默认行为模式就等同于使用了-F。

3.2.6 在文本文件里进行替换一般来说,执行文本替换的正确程序应该是sed - 流编辑器。sed 's/:.*//' /etc/passwd | 删除第一个冒号之后的所有东西sort -u 排序列表并删除重复部分

任何可显示的字符都能作为定界符。

用-e和-f选项,不用将多个sed通过管道串起来,就可以一次替换多个。

3.2.8 sed的运作命令行上的每个文件名会依次打开与读取。如果没有文件,则使用标准输入。sed读取每个文件,一次读一行,将读取的行放到内存的一个区域(模式空间)。所有编辑上的操作都会应用到模式空间的内容,当所有操作完成后,sed会将模式空间的最后内容打印到标准输出,再回到开始处,读取另一个输入行。

3.3 字段处理用空格(制表符)或特定的定界符(如冒号)。#字符起始的行表示注释,软件必须可忽略这样的行才行。

以定界符分隔字段的最好例子就是/etc/passwd了:一行表示一个用户,每个字段以冒号隔开。该文件含有7个字段:tolstoy:x:::Leo Tolstoy:/home/tolstoy:/bin/bash1.用户名称:2.加密后密码:3.用户ID:4.用户组ID:5.姓名:6.根目录:7.登录的Shell。

3.3.2 使用cut选定字段

3.3.3 使用join连接字段以一个共同的键值(主字段)将多个文件结合在一起。$ cat sales#业务员 数据量joe jane herman chris

$ cat quotas#业务员 配额joe jane herman chris

3.3.4 使用awk重新编排字段

awk程序基本架构:pattern { action }pattern通常是由斜杠括起来的ERE,action通常是一个明了的print语句。省略pattern则会对每一条输入记录执行action,省略action则等同于{ print }。

awk自动将各个记录分为字段,并将每条记录内字段数目存储到内建变量NF。默认以空白分隔,还可以将FS变量设置为一个不同的值。$加数字表示字段值。awk '{ print $1 }' 打印第1个字段awk '{ print $2, $5 }' 打印第2与第5个字段awk '{ print $1, $NF }' 打印第一个与最后一个字段awk 'NF > 0 { print $0 }' 打印非空行awk 'NF > 0' 同上

awk -F : '{ print $1, $5 }' /etc/passwd 设置字段分隔字符,-F选项自动设置FS变量。root root...tolstoy Leo Tolstoy

记得在print的参数间用逗号隔开,否则awk将连接相邻的所有值。awk -F: '{ print "User" $1 "is really" $5 }' /etc/passwdUserrootis reallyroot...Usertolstoyis reallyLeo Tolstoy

推荐整理分享Shell脚本学习指南之查找与替换介绍(shell脚本 教程),希望有所帮助,仅作参考,欢迎阅读内容。

Shell脚本学习指南之查找与替换介绍(shell脚本 教程)

文章相关热门搜索词:shell脚本指南,shell脚本 教程,shell脚本基础教学,shell脚本总结,shell脚本基础教学,shell脚本 教程,shell脚本基础知识,shell脚本 教程,内容如对您有帮助,希望把文章链接给更多的朋友!

分享shell编程中的几个小技巧 1、打印一些头信息commanddilimiter…………dilimiter以分界符号dilimiter中的内容作为命令的标准输入常用在echo命令中,这样就避免了没输出一行就要使用一

linux中常用脚本和函数分享 #查找当前目录中是否存在指定目录,若不存在,则创建之functionmkdir_1{iftest!-d$1thenmkdir$1fi}#指定文件中的"prefix=.*"串替换为"prefix=/home/gnome-unicore-install2/usr/

shell编程基础知识小结 1、文件类型介绍linux系统中主要包括以下七种文件类型:d目录-普通文件l符号链接s套接字文件b块设备文件c字符设备文件p命名管道文件2、正则表达式

标签: shell脚本 教程

本文链接地址:https://www.jiuchutong.com/biancheng/376778.html 转载请保留说明!

上一篇:Shell脚本学习指南之文本处理工具(shell脚本学习指南)

下一篇:分享shell编程中的几个小技巧(shell编程入门)

  • 税控盘服务费全额抵扣分录
  • 离境退税政策文件
  • 留底税额有没有时间
  • 城建税的税目是哪些
  • 债务重组计入哪项科目
  • 材料卸车费包含在哪里
  • 货物和运费一起开票怎么开
  • 小规模没有成本票企业所得税怎么办呀
  • 个体工商户出租商铺个人所得税
  • 房屋建筑物折旧率计算
  • 营改增一般纳税人标准
  • 有限合伙企业合伙人分红纳税
  • 定额发票不够用可以申请额度要交税吗
  • 企业住房维修基金怎么交
  • 林木育种的意义和作用
  • 非独立核算的分公司企业所得税怎么申报
  • 租房提取的话可以全部提取吗
  • 印花税本月没有,忘记零申报,有影响吗了
  • 施工单位项目部牌子
  • 建筑企业新项目增值税的计算
  • 破产报表日是哪一日
  • 物业费分摊会计分录
  • 进口采购交的增值税
  • 银行承兑汇票怎么取钱
  • 小企业财务报表不包括
  • 应收及预付款项包括( )
  • 委托贷款利息收入需要缴纳增值税么
  • 华为p30分屏怎么操作
  • 解决脱发的8个方法
  • 经营租赁是什么意思
  • 合并报表长投和所有者权益抵消的原理
  • 销售黄金的会计分录
  • 小规模纳税人和一般纳税人哪个好
  • 营改增会计分录
  • 公司缴纳的公积金什么时候到账
  • el-table-column label动态
  • php数组依次排列
  • 高德加载kml
  • 代收税款是什么意思
  • php扩展安装方法
  • ci框架视频教程
  • 月末损益结转手工结转步骤
  • kafka gui
  • php __get()
  • 材料暂估入库的依据有哪些
  • 制造费用结转本年利润吗
  • sqlserver定时执行sql
  • 固定资产盘盈为何要交所得税
  • mysql load local
  • 合同权利义务包含债务吗
  • 外贸会计的工作内容
  • 辅导费入什么科目
  • 其他应付款货方余额表示什么
  • 健身房健身器材采购清单
  • 企业存货计价方法发生变更案例
  • 错账的更正方法有哪些
  • 编制合并报表时最关键的一步
  • xp系统的电脑无法启动
  • culauncherexe是什么进程
  • 隐藏文件或文件夹
  • win8怎样获取管理员权限
  • linux文件目录的含义
  • win7虚拟内存最大设置多少
  • lnmp一键安装包是什么
  • win8怎么设置时间自动更新
  • unity as
  • linux常用的网络命令
  • c#怎么使用opencv
  • nodejs怎么下载其他版本
  • windows8.1 with bing
  • 安卓优化清理大师怎么样
  • python可变参数和不可变参数
  • node stream(流)有哪些?
  • shell 批量删除
  • js定时器有哪些,区别及用法
  • 江苏国税电子税务局网上申报流程
  • 印花税当期没有发生可以不用申报吗
  • 东莞医保缴费凭证怎么下载
  • 注册税务师考试时间2024
  • 国税申报时间2023
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设