草庐IT

linux - 如何从匹配行之后删除文件中的所有行?

我有一个由多行文本组成的文件:ThefirstlineThesecondlineThethirdlineThefourthline我有一个字符串,它是以下行之一:第二行我想删除文件中的字符串及其后面的所有行,所以除了字符串之外,它还会删除第三行和第四行。该文件将变为:Thefirstline我在google上搜索过解决方案,看来我应该使用sed。比如:sed'linenum,$d'file但是如何找到字符串的行号呢?或者,我应该怎么做? 最佳答案 如果您不想打印匹配的行(或任何后续行):sed-n'/Thesecondline/q;

linux - 将多行变成一个逗号分隔的行

这个问题在这里已经有了答案:Conciseandportable"join"ontheUnixcommand-line(10个回答)关闭8年前。我在多行中有以下数据:foobarquxzuusdfsdfasdf我想要做的是将它们转换为一个逗号分隔的行:foo,bar,qux,zuu,sdf,sdfasdf最好的unixone-liner是什么? 最佳答案 使用粘贴命令:paste-d,-sfile 关于linux-将多行变成一个逗号分隔的行,我们在StackOverflow上找到一个类似

linux - 将多行变成一个逗号分隔的行

这个问题在这里已经有了答案:Conciseandportable"join"ontheUnixcommand-line(10个回答)关闭8年前。我在多行中有以下数据:foobarquxzuusdfsdfasdf我想要做的是将它们转换为一个逗号分隔的行:foo,bar,qux,zuu,sdf,sdfasdf最好的unixone-liner是什么? 最佳答案 使用粘贴命令:paste-d,-sfile 关于linux-将多行变成一个逗号分隔的行,我们在StackOverflow上找到一个类似

linux - 如何从文本文件中删除换行符?

我有以下数据,我需要将它们全部放在一行中。我有这个:22791;14336;22821;34653;21491;25522;33238;我需要这个:22791;14336;22821;34653;21491;25522;33238;编辑这些命令都不能完美运行。他们中的大多数让数据看起来像这样:22791;14336;22821;34653;21491;25522 最佳答案 tr--delete'\n'编辑:如果此处发布的所有命令都不起作用,那么除了换行符分隔字段之外,您还有其他内容。可能您的文件中有DOS/Windows行结尾(尽管

linux - 如何从文本文件中删除换行符?

我有以下数据,我需要将它们全部放在一行中。我有这个:22791;14336;22821;34653;21491;25522;33238;我需要这个:22791;14336;22821;34653;21491;25522;33238;编辑这些命令都不能完美运行。他们中的大多数让数据看起来像这样:22791;14336;22821;34653;21491;25522 最佳答案 tr--delete'\n'编辑:如果此处发布的所有命令都不起作用,那么除了换行符分隔字段之外,您还有其他内容。可能您的文件中有DOS/Windows行结尾(尽管

linux - 带有 -i 选项的 sed 命令(就地编辑)在 Ubuntu 上运行良好,但在 Mac 上运行良好

这个问题在这里已经有了答案:sed-icommandforin-placeeditingtoworkwithbothGNUsedandBSD/OSX(8个回答)关闭5年前。我对Sed一无所知,但需要这个命令(在Ubuntu上运行良好)才能在MacOSX上运行:sed-i"/$domain.*#drupalpro/d"/etc/hosts我明白了:sed:1:"/etc/hosts":extracharactersattheendofhcommand 最佳答案 Ubuntu附带GNUsed,其中-i选项的后缀是可选的。OSX附带BSD

linux - 带有 -i 选项的 sed 命令(就地编辑)在 Ubuntu 上运行良好,但在 Mac 上运行良好

这个问题在这里已经有了答案:sed-icommandforin-placeeditingtoworkwithbothGNUsedandBSD/OSX(8个回答)关闭5年前。我对Sed一无所知,但需要这个命令(在Ubuntu上运行良好)才能在MacOSX上运行:sed-i"/$domain.*#drupalpro/d"/etc/hosts我明白了:sed:1:"/etc/hosts":extracharactersattheendofhcommand 最佳答案 Ubuntu附带GNUsed,其中-i选项的后缀是可选的。OSX附带BSD

linux - grep、awk 和 sed 有什么区别?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:WhatarethedifferencesbetweenPerl,Python,AWKandsed?Whatisthedifferencebetweensedandawk?也许不是一个非常具体的问题,但我对grep、awk和sed之间在它们在Unix/Linux系统管理和文本处理。 最佳答案 短定义:grep:在文件中搜索特定的词#usage$grepThisfile.txtEverylinecontaining"This"Everylinecontain

linux - grep、awk 和 sed 有什么区别?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:WhatarethedifferencesbetweenPerl,Python,AWKandsed?Whatisthedifferencebetweensedandawk?也许不是一个非常具体的问题,但我对grep、awk和sed之间在它们在Unix/Linux系统管理和文本处理。 最佳答案 短定义:grep:在文件中搜索特定的词#usage$grepThisfile.txtEverylinecontaining"This"Everylinecontain

linux - 仅当文件尚不存在时才将行附加到文件中

我需要将以下行添加到配置文件的末尾:include"/configs/projectname.conf"到一个名为lighttpd.conf的文件我正在考虑使用sed来执行此操作,但我不知道如何操作。如果该行不存在,我将如何只插入它? 最佳答案 保持简单:)grep+echo就足够了:grep-qxF'include"/configs/projectname.conf"'foo.bar||echo'include"/configs/projectname.conf"'>>foo.bar-q安静-x匹配整行-F模式是纯字符串https