位置: 编程技术 - 正文

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

编辑:rootadmin

4.1 排序文本

4.1.1 行的排序未提供命令行选项时,整个记录会根据当前locale所定义的次序排序。在传统的C locale中,也就是ASCII顺序。

4.1.2 以字段排序-k选项的后面接着的是一个字段编号,或者是一对数字。每个编号后面都可以接一个点号的字符位置,或修饰符字母。

如果仅指定一个字段编号,则排序键值会自该字段的起始处开始,一直继续到记录的结尾(而非字段的结尾)。

如果给的是一对用逗号隔开的字段数字,则排序键值将由第一个字段值的起始处开始,结束于第二个字段值的结尾。使用点号表示字符位置。-k2.4, 5.6指的是从第二个字段的第四个字符开始比较,一直比到第五个字段的第六个字符。$ sort -t: -k1,1 /etc/passwd 以用户名称排序bin:x:1:1:bin:/bin:/sbin/nologinchico:x:::Chico Marx:/home/chico:/bin/bashharpo:x:::Harpo Marx:/home/harpo:/bin/ksh...

$ sort -t: -k3,3nr /etc/passwd 反省UID排序或-k3nr,3或-k3,3 -n -r都可以。

4.1.3 文本块的排序有时需要对多行记录组合而成的数据排序。以地址清单为例:$ cat my-friends# SORTKEY: Schlo, Hans JurgenHans Jurgen SchloUnter den Linden D- BerlinGermany

# SORTKEY: Jones, Adrian...

技巧是:利用awk识别段落间隔,在每个地址内暂时使用一个未用过的字符取代分行。sort看到的行就会变成这样:# SORTKEY: Schlo, Hans Jurgen^ZHans Jurgen Schlo^ZUnter den Linden ^Z...cat my-friends | 读取地址文件 awk -v RS=" " '{ gsub("n", "^Z"); print }' | 转换地址为单行 sort -f | 排序地址数据,忽略大小写 awk -v ORS="nn" '{ gsub("^Z", "n"); print }' | 恢复行结构 grep -v '# SORTKEY' 删除标记行1. 函数gsub()为全局性替换(global substitution),类似sed下的s/x/y/g结构。2. RS变量时输入数据的记录分隔器(Record Separator)。 通常输入数据以换行隔开,使每行成为单个记录。 RS=" "是一个特殊用法,指的是记录以空行隔开。3. ORS是输出记录分隔器。注:'{ action }'是对每个字段的操作,而RS,ORS都是对记录的设定。

4.1.5 sort的稳定性sort并不稳定。

4.2 删除重复sort -u是依据匹配的键值进行消除操作,而非匹配的记录。uniq有3个好用选项: -c在每个输出行之前加上该行重复的次数。 -d则用于仅显示重复的行。 -u仅显示未重复的行。

4.3 重新格式化段落fwt -w

4.4 计算行数、字数以及字符数wc的默认输出是一行报告,包括行数、字数以及字节数。可用选项:-c(字节数)、-l(行数)、-w(字数)。 4.6 提取开头或结尾数行 显示文件列表中每一个的前n条记录: head -n n [file(s)] head -n [file(s)] awk 'FNR <= n' [file(s)] sed -e nq [file(s)] sed nq [file(s)] 观察不断增长的系统信息日志,Ctrl-C停止tail。

推荐整理分享Shell脚本学习指南之文本处理工具(shell脚本学习指南),希望有所帮助,仅作参考,欢迎阅读内容。

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

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

Shell脚本学习指南之查找与替换介绍 3.1查找文本grep:使用POSIX定义的基本正则表达式(BRE)。egrep:使用扩展正则表达式(ERE)。fgrep:快速grep。使用优化的算法,匹配固定字符串而非正则

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

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

标签: shell脚本学习指南

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

上一篇:shell中冒号的特殊用法分享(shell中的括号)

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

  • 个体工商户税收优惠政策2023年
  • 增值税小规模纳税人认定标准
  • 耕地占用税是什么税种
  • 增值税是否计入存货成本
  • 管理费用和研发费用的区别
  • 所得税季报中营业外收入填哪里
  • 网上申报中月平均工资怎么计算
  • 党费帐常用会计分录
  • 跨年调整会计科目怎么写
  • 小企业货币资金1710元正常吗
  • 小规模纳税人转一般纳税人
  • 再保险业务赔款如何进行税前扣除
  • 公司员工的伙食费计入什么科目
  • 公司取现备用金违法吗
  • 付拍卖佣金入什么科目核算及会计分录怎么做?
  • 抵缴以前年度所得税怎么做?
  • 个人所得税0申报操作流程
  • 出口退税可以不申报是否需要缴纳增值税
  • 车辆保险属于金融服务吗
  • 统借统贷合同需要交印花税吗
  • 住房补贴计入个人所得税吗
  • 酷狗云盘是干什么用的
  • efi系统分区能删除吗win10
  • 自己使用过的固定资产和旧货有什么区别
  • 安全生产费用怎么支出
  • 货没到申请退款玩付邮费吗
  • 销售收入的暂估入账
  • 中秋节给员工买什么福利
  • php中url什么意思
  • php字符串的三种定义方式
  • 进程 com surrogate
  • php的面向对象
  • 金融资产减值损益怎么算
  • 税控系统的维护包括哪些内容
  • Pinia(二)了解和使用Store
  • php 遍历树
  • 注意力机制cbam
  • 关税组成计税价格公式推导
  • css+html
  • 强化学习之stable_baseline3详细说明和各项功能的使用
  • 【Zabbix实战之部署篇】Zabbix客户端的安装部署方法
  • 深入全面剖析自己
  • vue2 自定义 el-radio-button 的样式并设置默认值的方法
  • 增值税不动产扣除项目
  • 什么是增值税举个例子
  • 应交税费月末要结平
  • 金蝶软件如何建立新账套
  • 负债类科目的余额方向为借方 不考虑双向等例外情况
  • 不抵扣的进项税为什么要交税
  • 陈列费计入什么科目
  • 增值税进项税没抵扣
  • 付款退回怎么做账
  • 科技项目扶持资金
  • 委托加工的材料成本包括运费吗
  • 预付账款转营业外支出
  • 停车发票怎么盖章
  • 三栏式明细账适用于原材料吗
  • 支票有效期过期了怎么办
  • 如何找回丢失数据
  • windows任务管理器打不开
  • 逼死win8的节奏 Win7升级至Win9仅需30美元 自动升级不需要重新安装
  • win10快速启动什么意思
  • linux系统百科
  • 只需要30秒让让你的电脑速度快一倍
  • tr linux 命令
  • centos如何添加监听端口
  • macos 音量快捷键
  • windows7开机提示盗版
  • linux小技巧
  • win7系统电脑无声音
  • 用滑动门技术设计一幅画
  • python ar
  • 使用 jQuery.ajax 上传带文件的表单遇到的问题
  • JQuery之proxy实现绑定代理方法
  • jQuery插件安装教程
  • 个体户开票怎么开步骤
  • 房地产预缴土增值税
  • 深圳国税网上申报流程图
  • 青岛地方税务局第三分局局长
  • 如何理性看待出轨
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设