使用sed进行非常基本的替换
真的很感谢你在这方面的帮助 我正在使用sed创建一个CSV文件。实际上,多个html文件都合并为一个html文件,然后使用sed删除所有垃圾图片等,以获取原始列数据 我已经完成了所有这些工作,但最后一点却被卡住了 我想做的是非常基本的-我想替换以下几行:使用sed进行非常基本的替换,sed,substitution,Sed,Substitution,真的很感谢你在这方面的帮助 我正在使用sed创建一个CSV文件。实际上,多个html文件都合并为一个html文件,然后使用sed删除所有垃圾图片等,以获取原始列数据 我已经完成了所有这些工作,但最后一点却被卡住了 我想做的是非常基本的-我想替换以下几行: "a variable string" "end td" "begin td" 用一行: "a variable string" (此行末尾有制表符) 我在用DOS 如你所见,我对这一切都是新手。如果我能完成这项工作,我将在未来节省大量时
"a variable string"
"end td"
"begin td"
用一行:
"a variable string"
(此行末尾有制表符)
我在用DOS
如你所见,我对这一切都是新手。如果我能完成这项工作,我将在未来节省大量时间,因此我将感谢您的帮助。
目前,我必须将一些html标题注入到文本文件中,在html编辑器中打开它,选择表格,然后将其粘贴到电子表格中,这有点麻烦
还有,有没有一种简单的方法可以让sed从给定的行中删除括号“(”and“)”?我怀疑这是你真正想要的,但这是你想要的
sed "s/\"a variable string\"/&\t/; s/\"end td\"//; s/\"begin td\"//" inputfile
您可能想做的是在它们连续出现时替换它们。以下是您可以如何做到这一点:
sed "1{N;N}; /\"a variable string\"\n\"end td\"\n\"begin td\"/ s/\n.*$/\t/;ta;bb;:a;N;N;:b;$!P;N;D" inputfile
这将删除文件中的所有括号:
sed "s/[()]//g" inputfile
要选择特定的行,可以执行以下操作:
sed "/foo/ s/[()]//g" inputfile
只有当“foo”这个词在一行中的某个地方时,才会进行替换
编辑:将单引号更改为双引号,以容纳GNUWin32和CMD.EXE。我之前留下的评论似乎未保存,因此将重试 删除(和)的代码非常有效,谢谢 你是对的-我想把3行合并成一行,所以你给出的第二个例子,它看起来像是将接下来的两行读入模式空间,看起来更有希望。然而,输出并不是我所期望的 我现在意识到代码必须更加复杂,我不想再麻烦你了,因为我手动将一些html代码注入到文本文件中,在Openoffice中打开并粘贴到电子表格只需几秒钟,我感觉手动生成sed编码将是一个非常好的方法噩梦 基本上,转换html的规则需要是: [每个标记都已格式化,因此显示在自己的行中] 我在下面给出了一个输入文件和所需输出文件的示例,以供参考 1) 如果下一行的
:-)DOS?你疯了吗?(有针对DOS的sed吗?)是的:sed允许我从HTML文件中提取部分文本,然后转储到一个新文件中。我怀疑它不是DOS,但它是Windows中的CMD shell。你不应该将不回答问题的内容发布为“答案”“。这和通常的论坛不一样。如果你需要提供额外的信息或使用评论(就像你曾经做过的那样)做出简短的回答,你应该编辑你的原始问题。我应该猜到您的示例中包含了“td”,您正在处理HTML<代码>sed不适合该作业。你应该使用一些专门用于HTML的东西(你的问题应该很清楚)。用户不能授予徽章-系统根据收到的选票等授予徽章。但是,您可以标记答案。。。。。。当你有更多的声望点时,就把它们投上去。这些都是大多数新用户不熟悉的东西,所以不要觉得我太挑剔了。有关更多信息,请阅读常见问题解答。cmd.exe不喜欢单引号
sed“…”文件
@user229426:我刚刚在CMD
提示符下尝试了Cygwinsed
,使用单引号效果很好。当我尝试使用GNUWin32sed
时,我收到一个错误,抱怨单引号。我将编辑我的答案。