热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

每日一shell之字符处理grepsortuniqcuttrpastesplit

grep搜索文本grep-[icvn]‘匹配字符’文件名-i不区分大小写-c统计匹配行数-n输出行号-v反向匹配(就是不包含匹配字符的行)需要注意的一

grep搜索文本

grep -[icvn]‘匹配字符’ 文件名
-i不区分大小写
-c统计匹配行数
-n输出行号
-v反向匹配(就是不包含匹配字符的行)
这里写图片描述
需要注意的一点是有了-c这个选项输出只有行数,是不会输出内容的

sort排序

sort默认是按字符排序的
sort -[ntkr] 文件名
-n用数字排序
-t指定分割符
-k第几列
-r反向排序
这里写图片描述
这里就是按字母顺序
这里写图片描述
这里的11就是字母排序
这里写图片描述

uniq删除重复内容

一般这个命令需要和sort一起用
uniq -[ic]
-i忽略大小写
-c统计重复的行数
这里写图片描述

cut截取文本

cut -f指定列 -d分隔符
cut -c指定列的字符
这里写图片描述
注意空格
这里写图片描述

tr做文本转换

大小写转换
tr '[a-z]' '[A-Z]'
删除
tr -d '删除内容'
这里写图片描述
顺便说一下这里的命令不会改变源文件的内容
这里写图片描述

paste做文本合并

按行进行合并
paste file1 file2
paste -d:指定分隔符为冒号
这里写图片描述

split分割大文件

split -l按行分
split -b按大小分(二进制文件只能用按大小分)
这里写图片描述
这里用了dd命令创建了一个指定大小的文件
dd if=/dev/zero of=50M bs=M count=50
if是数据的写入源
of是数据的输入地
bs是后面count值的单位
dd命令是 用指定大小的块 来拷贝一个文件。


推荐阅读
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文总结了Linux下多线程执行shell脚本的4种方法,包括切换到工作目录执行、使用绝对路径执行、直接使用bash或sh执行。同时介绍了为什么需要加上"./"来执行脚本的原因。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • R语言拼接字符串_paste的用法说明
    这篇文章主要介绍了R语言拼接字符串_paste的用法说明,具有很好的参考价值,希望对大家有所帮助。一 ... [详细]
  • zabbix中文乱码的问题
    在使用zabbix时,有时候会出现中文乱码的问题,如下:因为zabbix自身对中文简体的支持不完善,需要我们手动的去上传新的字体进行替换:1、在windows获取字体库文件在Windows上的 ... [详细]
  • 这个问题困扰了我两天,卸载Dr.COM客户端(我们学校上网要装这个客户端登陆服务器,以后只能在网页里输入用户名和密码了),问题解决了。问题的现象:在实验室机台式机上安装openfire和sp ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • java drools5_Java Drools5.1 规则流基础【示例】(中)
    五、规则文件及规则流EduInfoRule.drl:packagemyrules;importsample.Employ;ruleBachelorruleflow-group ... [详细]
  • 在本教程中,我们将看到如何使用FLASK制作第一个用于机器学习模型的RESTAPI。我们将从创建机器学习模型开始。然后,我们将看到使用Flask创建AP ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
  • 随着我司的应用都开始容器化,相应的ETL流程也需要迁移到容器中。常规的SQL和shell脚本迁移之后执行基本没有问题,主要的问题在于数据接入使用kettle的场景下,kettle启 ... [详细]
  • Linux ls只显示以.qcow2结尾的文件
    ls-al|grep-Eqcow2$ ... [详细]
  • mapreduce源码分析总结
    这篇文章总结的非常到位,故而转之一MapReduce概述MapReduce是一个用于大规模数据处理的分布式计算模型,它最初是由Google工程师设计并实现的ÿ ... [详细]
  • 找到JDK下载URL当然去官网找了。目前最新的1.8的下载URL(RPM)如下:http:download.oracle.comotn-pubjavajdk8u161-b122f3 ... [详细]
  • Telnet的使用(Telnet远程连接Linux)
    一、环境描述:客户端:Win10操作系统 ... [详细]
author-avatar
luotingyou492
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有