Tag: sed

我需要我的sed -i命令进行就地编辑,以使用GNU sed和BSD / OSX sed

我有一个makefile(为Linux上的gmake开发),我试图移植到OSX,但它似乎像sed不想合作。 我所做的是使用GCC自动生成依赖文件,然后使用sed稍微调整它们。 makefile的相关部分: $(OBJ_DIR)/%.d: $(SRC_DIR)/%.cpp $(CPPC) -MM -MD $< -o $@ sed -i 's|\(.*\)\.o:|$(OBJ_DIR)/\1.o $(OBJ_DIR)/\1.d $(TEST_OBJ_DIR)/\1_utest.o:|' $@ 虽然在GNU / Linux下运行时没有问题,但是在尝试在OSX上构build时遇到以下错误: sed: 1: "test/obj/equipmentConta …": undefined label 'est/obj/equipmentContainer_utest.d' sed: 1: "test/obj/dice_utest.d": undefined label 'est/obj/dice_utest.d' sed: 1: "test/obj/color-string_u …": undefined label 'est/obj/color-string_utest.d' 看起来sed正在砍掉一个angular色,但我看不到解决scheme。

SED中如何避免双引号和单引号? (bash)的

根据我所能find的,当你使用单引号时,里面的所有内容都被认为是文字。 我想要replace。 但是我也想find一个有单引号或双引号的string。 例如, sed -i 's/"http://www.fubar.com"/URL_FUBAR/g' 我想用URL_FUBAR取代“http://www.fubar.com”。 sed应该如何识别我的/或我的双引号? 谢谢你的帮助! 编辑:我可以用s/\"http\:\/\/www\.fubar\.\com\"/URL_FUBAR/g吗? \实际上是否在单引号内转义字符?

如何打印文本文件每行中的字符数

我想用unix命令打印文本文件每行的字符数。 我知道这是简单的PowerShell gc abc.txt | % {$_.length} 但我需要unix命令。

你可以批量编辑在grep中返回的所有文件?

我想批量编辑一大堆在grep中返回的文件。 (我知道,我应该在sed上更好)。 所以如果我这样做: grep -rnI 'xg_icon-*' 我如何将所有这些文件转换为vi?

sed删除不包含特定string的行

我是新来sed ,我有以下问题。 在这个例子中: some text here blah blah 123 another new line some other text as well another line 我想删除除了那些包含string'文本' 和 'string'的所有行,所以我的输出文件如下所示: some text here blah blah 123 some other text as well 任何提示如何可以使用sed完成?

在每行的末尾添加文本

我在Linux命令行,我有文件 127.0.0.1 128.0.0.0 121.121.33.111 我想要 127.0.0.1:80 128.0.0.0:80 121.121.33.111:80 我记得我的同事们用的是sed,但是在阅读sed手册后仍然不清楚如何在命令行上做到这一点?

只能使用sed或awk从html页面中提取url的最简单的方法

我想从html文件的定位标记中提取URL。 这需要使用SED / AWK在BASH中完成。 没有perl请。 什么是最简单的方法来做到这一点?

我怎样才能在OS X上插入一个制表符字符?

我努力了: echo -e "egg\t \t\t salad" | sed -E 's/[[:blank:]]+/\t/g' 其结果是: eggtsalad 和… echo -e "egg\t \t\t salad" | sed -E 's/[[:blank:]]+/\\t/g' 其结果是: egg\tsalad 我想要什么: egg salad

在Linux中用文本文件中的逗号replace空格

我需要编辑几个文本文件(从sar输出),并将其转换为CSV文件。 我需要使用sed或awk函数(在Linux中简单的shell脚本)来更改每个空白(也许它是输出中的数字之间的选项卡)。 谁能帮我? 我使用的每个命令根本没有改变文件; 我试过gsub 。

如何从匹配行后面开始删除文件中的所有行?

我有一个由几行文本组成的文件: The first line The second line The third line The fourth line 我有一个string是其中一行: The second line 我想删除string和文件后面的所有行,所以除了string之外,它会删除The third line和The fourth line 。 该文件将成为: The first line 我在谷歌上search了一个解决scheme,似乎我应该使用sed 。 就像是: sed 'linenum,$d' file 但是如何findstring的行号呢? 或者,我该怎么做呢?