linux下如何删除整行文本格式,Shell中如何删除文本比较长的行的实现方法
Shell中如何删除文本比较长的行的实现方法
有的时候需要对文件执行删除删除操作,这个时候比较常用的会使用vi命令中的dd命令,比如先执行10G(跳转到第10行),然后再执行20dd(删除20行),但实际情况未必是这么常规,比如说,要删除文件中,某行长度超过200个字符的行,如果文本比较小,还好,如果是几万行,几十万行的呢? 这个想用vi就不现实了。 我然想到的办法就是:比如说,通过sed,awk,egrep命令来达到目的。 举个简单例子。
假如说如下文本文件,要将其中长度为5字符以上的给删除掉。
root@linux# cat data
1
22
333
4444
55555
666666
7777777
88888888
方法一: 使用awk命令的length()函数
root@linux# cat data | awk '{if (length($0) <=4 ) print $0}'
1
22
333
4444
方法二: 使用grep命令
root@linux# cat data | egrep -w '^.{1,4}'
1
22
333
4444
方法三: 使用sed命令
root@linux# cat data | sed -n '/^.\{5,\}/!w NewFile'
root@linux# cat NewFile
1
22
333
4444
备注:
1. 使用awk,grep命令的时候,可以将处理好的文件重定向到另外一个新文件中
2. egrep -w参数,表示仅跟模式匹配的单词
3. ^. 表示以任意字符开头的行,这个和-w命令匹配使用,这个很关键,否则找不到
4. !w !表示所有模式不匹配的,w是输出,写入到新文件NewFile文件中
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
linux下如何删除整行文本格式,Shell中如何删除文本比较长的行的实现方法相关推荐
- raw文件 linux,Linux下安装RawTherapee,跨平台RAW格式图像处理工具
原标题:Linux下安装RawTherapee,跨平台RAW格式图像处理工具 正文 跨平台的RAW格式照片处理系统RawTherapee 5.8于近日发布.以下是在Ubuntu 18.04,Ubunt ...
- linux rm无法删除权限不够,linux下的文件用root用户rm -rf命令无法删除解决方案
linux下的文件用root用户rm -rf命令无法删除解决方案(可能文件处在挂载的磁盘阵列(U盘,光盘.硬盘等),而磁盘阵列在别的服务器上,以下解决步骤和方案可能只是针对这一种情况,不保证解决所有类 ...
- Linux下,用户信息存储位置与格式,用户名,密码,用户id组id等存放文件位置
Linux下,用户信息存储位置与格式 用户信息文件: /etc/passwd文件中的内容,是由一行七位,用六个:分割的行组成的所有的用户信息配置文件, 这里面存放的用户信息虽然长短不一,但格式是固定的 ...
- 在linux下的使用复制命令cp,不让出现“overwrite”(文件覆盖)提示的方法。
2019独角兽企业重金招聘Python工程师标准>>> 在linux下的使用复制命令cp,不让出现"overwrite"(文件覆盖)提示的方法. 一般我们在使用c ...
- linux 下的动态库制作 以及在python 中如何调用 c 函数库
linux 下的动态库制作 以及在python 中如何调用 c 函数库 动态库: 动态库又称动态链接库英文为DLL,是Dynamic Link Library 的缩写形式,DLL是一个包含可由多个程序 ...
- 下载m3u8视频及在Linux下将ts合并为mp4格式
背景 在爬取视频时偶尔会遇见m3u8格式的视频链接,视频下载后为多个ts文件,下面分享如何下载m3u8格式视频以及在Linux下将ts文件合成mp4 文件. m3u8格式链接解析 url = xxxx ...
- linux 移动硬盘 大于4g,Linux下挂大于2G的NTFS格式移动硬盘方法
linux下挂载ntfs格式U盘,硬盘等外部存储的方法 Linux下加载NTFS格式移动硬盘的解决方案 原创: 本解决方案需借助两个内核模块来支持,即ntfs-3g和fuse-2.X,其中fuse-2 ...
- linux下实现dlna识别当前音频格式,如何将实时音频流设置为DLNA兼容设备?
问题描述 有没有办法将声卡的实时输出从我们的12.04.1 LTS amd64桌面流式传输到我们网络中的DLNA-compliant外部设备?使用Rygel,miniDLNA和uShare选择共享目录 ...
- linux下输入ls显示时间格式,【Linux基础】linux下修改ls显示的时间格式
NSThread 子线程 Cocoa NSOperation GCD(Grand Central Dispatch) 多线程 单词:thread 英 θred:n 线.思路.vt 穿过.vi 穿透过 ...
最新文章
- “996 是福利,007 才是常态”?!千万程序员怒怼每日优鲜!
- GIS中的坐标系定义与转换
- delphi 怎么监测image有没有变动_社会舆情监测引导应对解决方案
- MVVM模式的3种command总结[2]--RelayCommand
- 一起来玩树莓派--解决官方docker源安装失败的问题
- Mysql修改数据库密码的几种方法
- 卡尔曼滤波测量球体自由落下
- githua 账号合并_如何合并他人的分支 github
- 在 Chrome 浏览器中安装印象笔记·剪藏插件
- android u盘检测工具,android U盘检测及获取内存储器信息
- Docker端口映射不起作用的解决办法
- QT 之QTreeWidget实现好友列表
- ArduPilot添加新的惯导方案
- 软件工程基础第一次作业
- 【死磕 Spring】----- IOC 之 Factory 实例化 bean
- 计算机风扇维修,千米快修电脑维修:电脑风扇散热不好,经常出问题怎么办?...
- JSP程序设计——手机销售网后台设计
- 人工智能导论--浙江工业大学--王万良
- 开发板、原理图和数据手册-1.3.ARM裸机第三部分-朱有鹏-专题视频课程
- nfc读卡java开发,分享一段飞天R502读卡器的JAVA读卡代码
热门文章
- 回滚 - 每天5分钟玩转 Docker 容器技术(141)
- Greenplum介绍
- 《Node.js区块链开发》一3.5 亿书对DPoS机制的改进
- PHP的SQL注入攻击的技术实现以及预防措施
- M1事后分析报告--We have power to change the origin state
- 编译安装SVN不结合apache
- linux学习--shell重定向
- hdu4169_Wealthy Family_树形DP(2011美国区域赛)
- 公司--显示效果,多出来的用...
- 公司内部 action调用持久层规范