linux删除每行首字符,vim技巧:删除行首、行末的空白字符,删除空白行
使用 :help + 命令查看 + 的含义如下:
+ Matches 1 or more of the preceding atom, as many as possible.
使用 :help /* 命令查看在模式匹配中 * 的含义如下:
* (use * when 'magic' is not set)
Matches 0 or more of the preceding atom, as many as possible.
删除空白行
空白行指的是看起来没有内容的行,但实际上可能会有空格、Tab字符,或者行末的换行符。针对下面几种情况,需要用不同的命令来删除空白行:
删除只有一个换行符的空行
删除包含空白字符的空白行,但不删除只有一个换行符的空行
删除包含空白字符的空白行和只有一个换行符的空行
删除只有一个换行符的空行
在 vim 中,可以使用 :%g/^$/d 命令来删除只有一个换行符的空行。这里的 ^ 表示匹配行首,$ 表示匹配行末,在行首和行末之间没有任何字符,也就是空行。严格来说,这里说的“行末”指的是最后一个换行符前面的一个字符,不包括换行符自身。“空行” 实际上还是包含有一个换行符。
假设文件中有如下的内容:
abcd
efg
hijk
lmn
opqrst
那么执行 :%g/^$/d 命令后的内容如下:
abcd
efg
hijk
lmn
opqrst
可以看到,中间的空行都被删除了。
删除包含空白字符的空白行,但不删除只有一个换行符的空行
有一些空白行看起来没有内容,但可能会包含空格、Tab字符等空白字符,这些行用 :%g/^$/d 命令无法删除,^$ 匹配不到包含空白字符的情况。
可以用 :%g/^s+$/d 命令来删除这些空白行,但不删除只有一个换行符的空行。
这里的 s 表示匹配一个空白字符,+ 表示匹配一个或连续多个跟在它前面的上一个字符,s+ 至少匹配一个空白字符,换行符不属于空白字符,所以不匹配只有一个换行符的情况。
删除包含空白字符的空白行和只有一个换行符的空行
可以使用 :%g/^s*$/d 命令来同时删除包含空白字符的空白行和只有一个换行符的空行。
这里的 * 表示匹配零个或连续多个跟在它前面的上一个字符。对 ^s*$ 模式来说,匹配零个空白字符的情况,就相当于 ^$ 模式,也就是匹配只有一个换行符的空行,所以这个命令可以删除只有一个换行符的空行。
linux删除每行首字符,vim技巧:删除行首、行末的空白字符,删除空白行相关推荐
- 删除桌面计算机,电脑设置小技巧(多余壁纸、屏保删除方法)
1.电脑桌面壁纸的删除方法 XP系统进入C:\WINDOWS\Web\Wallpaper...把里面不要的图片删除,就行了. 右键点击桌面-属性-背景-点你不要的那个背景壁纸-点击浏览(可以看见你不要 ...
- VIM技巧:显示行号
在vi的命令模式下输入":set nu",就有行号了,取消行号输入":set nonu". 命令只对当前文档有效,如果想使vi打开文档时默认显示行号,可以修改v ...
- java实现从头部及尾部删除指定长度字符
程序 运行结果 程序 package util;import java.math.BigDecimal; import java.text.DecimalFormat; /* * 合肥工业大学 管理学 ...
- Linux新手生存笔记[2]——vim训练稿
回到全局目录 word转成html再搞到csdn这块,效果不是很好,表格每行显示太高........囧 ---------------------------- VIM命令训练稿 目录 1.打开文件操 ...
- IDEA跳至行首行末快捷键
shift + 数字键盘: Shift + 7调到一行的行首 Shift + 1:调制一行的行末 Shift + 9:调制全篇开头 Shift + 3:调制全篇结尾
- vim 删除重复部分的行 vim 技巧
随笔 - 65, 文章 - 139, 评论 - 0, 引用 - 0 vim 删除重复部分的行 vim 技巧 g/\%(^\1\>.*$\n\)\@<=\(\k\+\).*$/d 重复的部分 ...
- Linux之vim全选、全部复制、全部删除
Linux之vim全选.全部复制.全部删除 全选(高亮显示):按esc后,然后ggvG或者ggVG 全部复制:按esc后,然后ggyG 全部删除:按esc后,然后dG
- Linux之vim全选,全部复制,全部删除
Vim中如何全选并复制? (区分大小写!!!) 全部删除:按esc键后,先按gg(到达顶部),然后dG 全部复制:按esc键后,先按gg,然后ggyG 全选高亮显示:按esc键后,先按gg,然后ggv ...
- 原创-linux下编译器vi、vim的使用技巧
玩了三年linux,把最最常用的vim编译器的一些使用技巧整理了下分享给大家. linux下的文本编辑器vi=VIsual: vim(vi improved) vi 模式化编译器分为三个模式: 输入模 ...
最新文章
- Verilog中可综合与不可综合的语句
- 车联网大数据框架_FEV:基于最新网关技术管理车联网大数据
- 【luogu】 P1880 石子合并
- spark的Web UI查看DAG的两种方式
- 用Vue.js开发微信小程序:开源框架mpvue解析
- bash实现自动补全
- 【XSY2732】Decalcomania 可持久化线段树 分治
- 【TSP问题】基于禁忌搜索算法求解旅行商问题Matlab源码
- 战场地图上的 Faked Shadow 基本实现
- 10大主流压力/负载/性能测试工具推荐
- 国开本科计算机应用基础操作题,新版国家开放大学中央电大本科计算机应用基础操作题题库...
- java配置ehcache_配置和使用Ehcache
- 织梦图集php,织梦怎么为新图集页面增加图片下载功能
- 工业企业如何转型与升级?2022年我国6部门联合出台《工业能效提升行动计划》具体申报条件及认定好处如下
- 记录下server的配置
- Android CE DE加密小结
- MySQL insert ignore/ update ignore 不只用来忽略id重复
- 常见的几种运动控制方案!
- myeclipse 做移动开发
- HDU - 6333 Harvest of Apples (莫队)