在 bash 中,如何用 null 替换空行,反之亦然?

克里斯托弗·金

如何在bash\n\n中用空\0字符替换两个换行符,反之亦然?

我看到td可以用空替换单个换行符,但不能用两个连续的换行符替换。我试过了sed,但似乎不可能。sed似乎“基于行”并且不喜欢弄乱换行符。

我想要这样做的原因是能够使用sort -z. 例如,给定一个文件

record b
foo bar

record a
zee bee
dee da

我想将该文件传输到一个转换中,该转换将空行替换为空,然后转换为sort -z,然后将空替换为空行,最后将其吐出

record a
zee bee
dee da

record b
foo bar
卡米尔·马乔罗夫斯基

初步说明

标题询问您尝试的解决方案;您在问题正文中描述了真正的问题。比较XY 问题这个答案并不完全是“用空替换空行,反之亦然”,所以它没有解决标题。它在正确的位置注入空字节,然后删除它们(因为我认为它更容易),这样它就解决了主体。


解决方案

让我们调整我的另一个答案:按字母顺序排列行包你的问题几乎是我回答的问题的重复。

在那里,每条记录都以像[ProfileX]. 在你的情况下,我们可以说一个空行就是这样的标题,但第一条记录错过了它。要使用链接的解决方案,我们需要预先添加第一个标题,并在最后删除第一个标题。

sed -e '1 s/^/\n/' -e '1 ! s/^$/\x00/' | sort -z | tr -d '\0' | sed -e '1 d'
#   ^^^^^^^^^^^^^^                                                           add missing header
#                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                apply the other answer (adjusted)
#                                                               ^^^^^^^^^^^^ remove excessive header

如果没有这个修改,输入的第一条记录就会出现在输出中,前面没有任何空行;这将是一个问题,除非它是输出中的第一条记录。并且输出中的第一条记录将在其前面有其标题(如果有);这将是一个问题,除非它是输入的第一条记录(没有标题的记录)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

zsh中有哪些功能,bash中缺少哪些功能,反之亦然?

来自分类Dev

在Scala中可以尝试,反之亦然

来自分类Dev

在Scala中可以尝试,反之亦然

来自分类Dev

反之亦然,在Admin Django中

来自分类Dev

BASH同时将大写转换为小写,反之亦然

来自分类Dev

bash脚本将大写转换为小写,反之亦然

来自分类Dev

如何在Hive中访问HBase表,反之亦然?

来自分类Dev

如何在Python中实现反之亦然的映射?

来自分类Dev

如何检查点落在矩形中,反之亦然?

来自分类Dev

如何用单词替换SSRS中的NULL值?

来自分类Dev

如何用Python替换bash?

来自分类Dev

如何用NULL替换空白

来自分类Dev

如何根据CheckBox状态更改ListBox选择,反之亦然?

来自分类Dev

如何将CLOB转换为图像,反之亦然?

来自分类Dev

Linux:如何从组名获取组ID?反之亦然?

来自分类Dev

代码更改时如何刷新图表,反之亦然?

来自分类Dev

如何将大写更改为小写,反之亦然?

来自分类Dev

如何使用react-spring useTransition从左到右或反之亦然

来自分类Dev

如何让Windows查看Linux主机名,反之亦然?

来自分类Dev

如何根据CheckBox状态更改ListBox选择,反之亦然?

来自分类Dev

如何将CLOB转换为图像,反之亦然?

来自分类Dev

如何在while循环中执行if语句,反之亦然

来自分类Dev

如何从IP成功查找主机名,反之亦然?

来自分类Dev

如何将整数转换为指针,反之亦然

来自分类Dev

如何评估对象的类值,反之亦然?

来自分类Dev

如何从NodeID获取长/纬度信息,反之亦然

来自分类Dev

如何使用两列分组,反之亦然

来自分类Dev

如何从 mat 对象获取整数数组,反之亦然

来自分类Dev

如何根据选择框填充输入字段,反之亦然

Related 相关文章

热门标签

归档