我有以下文件
titi
tata
toto
tata
如果我执行
sed -i "/tat/d" file.txt
它将删除所有包含的行tat
。该命令返回:
titi
toto
但我只想删除包含的文件中出现的第一行tat
:
titi
toto
tata
我怎样才能做到这一点?
您可以使用两个地址的形式:
sed '0,/tat/{/tat/d;}' inputfile
这将删除该模式的第一次出现。
引用自info sed
:
A line number of `0' can be used in an address specification like
`0,/REGEXP/' so that `sed' will try to match REGEXP in the first
input line too. In other words, `0,/REGEXP/' is similar to
`1,/REGEXP/', except that if ADDR2 matches the very first line of
input the `0,/REGEXP/' form will consider it to end the range,
whereas the `1,/REGEXP/' form will match the beginning of its
range and hence make the range span up to the _second_ occurrence
of the regular expression.
问题内容: 我想从文件末尾删除一些 n 行。可以使用sed完成此操作吗? 例如,要删除2到4行,我可以使用 但是我不知道行号。我可以使用删除最后一行 但我想知道从末尾删除 n 行的方法。请让我知道如何使用sed或其他方法进行操作。 问题答案: 我不知道,但是可以用:
问题内容: 我需要一个衬套才能删除文本文件任何一行上的前五个字符。我如何用sed做到这一点? 问题答案: 手段 替换(“ s”,替换)行首,然后用5个字符(“。”)替换为空 。 有更紧凑或灵活的方式来使用sed或cut编写此代码。
本文向大家介绍如何使用python删除一个文件?相关面试题,主要包含被问及如何使用python删除一个文件?时的应答技巧和注意事项,需要的朋友参考一下
问题内容: 我一直在网上搜索,但没有找到任何好的解决方案。 这是我的文本文件: 我要删除的是第一行(这意味着将第二行用作第一行,而不用空格填充第一行)。 有人可以帮我吗? 问题答案: 假设您有足够的内存来将所有内容保存在内存中: 我们可能会更喜欢,打开文件,阅读,然后找回开始,消除第二个,但这确实足够了。
问题内容: 我正在尝试使用sed删除空行: 但我没有运气。 例如,我有以下几行: 我希望它像: 这应该是什么代码? 问题答案: 您的“空”行中可能有空格或制表符。使用POSIX类与去除只含有空格的所有行: 使用ERE的较短版本,例如gnu sed: (请注意,sed的确实 不 支持PCRE)。
这个的代码应该是什么?