Tag: sed

sed命令与-i选项(就地编辑)在Ubuntu上工作正常,但不是Mac

我对Sed一无所知,但是需要这个命令(在Ubuntu上可以正常工作)在Mac OSX上工作: sed -i "/ $domain .*#drupalpro/d" /etc/hosts 我越来越: sed: 1: "/etc/hosts": extra characters at the end of h command

不区分大小写的search和replacesed

我正在尝试使用SED从日志文件中提取文本。 我可以做一个search和replace,没有太多的麻烦: sed 's/foo/bar/' mylog.txt 但是,我想使search不区分大小写。 从我GOOGLE了,它看起来像追加“我”的命令应该工作结束: sed 's/foo/bar/i' mylog.txt 但是,这给了我一个错误消息: sed: 1: "s/foo/bar/i": bad flag in substitute command: 'i' 这里怎么回事,我该如何解决? 我在OS X上,以防万一。

Sed不承认\ t反而把它当作't'为什么呢?

sed "s/\(.*\)/\t\1/" $filename > $sedTmpFile && mv $sedTmpFile $filename 我期待这个sed脚本在$filename的每一行字体中插入一个标签,但事实并非如此。 由于某种原因,它插入在..而奇怪..

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

我有以下数据,我需要把它放在一行。 我有这个: 22791 ; 14336 ; 22821 ; 34653 ; 21491 ; 25522 ; 33238 ; 我需要这个: 22791;14336;22821;34653;21491;25522;33238; 编辑 没有这些命令是完美的。 他们大多数都是这样的数据: 22791 ;14336 ;22821 ;34653 ;21491 ;25522

添加到包含模式的行的末尾 – 使用sed或awk

这是示例文件 somestuff… all: thing otherthing some other stuff 我想要做的就是添加到以all:开头的行all:像这样: somestuff… all: thing otherthing anotherthing some other stuff 我可能可以使用sed来做这个,但是我并不擅长sed,所以有人可以帮忙吗?

使用grep和sed查找并replacestring

我正在使用以下search目录recursionsearch特定的string,并将其replace为另一个: grep -rl oldstr path | xargs sed -i 's/oldstr/newstr/g' 这工作正常。 唯一的问题是,如果string不存在,那么sed失败,因为它没有得到任何参数。 这对我来说是一个问题,因为我使用ANT自动运行它,并且由于sed失败,构build失败。 如果找不到string,是否有办法使其失效? 我感兴趣的是我可以使用的一行简单的解决scheme(不一定与grep或sed但与这些常见的Unix命令)。

用逗号分隔多行代码(Perl / Sed / AWK)

我有多行中的以下数据: foo bar qux zuu sdf sdfasdf 我想要做的就是用一行和逗号分隔来转换它们: foo,bar,qux,zuu,sdf,sdfasdf 什么是最好的unix单线程来做到这一点?

如何删除尾部空白与sed?

我有一个简单的shell脚本,从文件中删除尾随空白。 有没有办法让这个脚本更紧凑(不创build临时文件)? sed 's/[ \t]*$//' $1 > $1__.tmp cat $1__.tmp > $1 rm $1__.tmp

使用sed,如何打印一行的第一个“N”字符?

用sed,打印前n个字符的单行是什么。 我正在做以下。 grep -G 'defn -test.*' OctaneFullTest.clj | sed ….

如何使用sed / grep来提取两个单词之间的文本?

我试图输出一个string,其中包含一个string的两个单词之间的所有内容: input: "Here is a String" 输出: "is a" 使用: sed -n '/Here/,/String/p' 包括端点,但我不想包括它们。