我正在浏览网页以获取有关正则表达式和sed用法的信息。我也有sed的手册打开。不过,我在这里发布这个问题是因为我确信有人经常使用这两个问题,以便在我制定解决方案之前他们可以回答这个问题。
我有几百个HTML文档,其中包含以下链接:
http://www.example.com/subfolder/abc.asp?page=1#main
我需要删除“#main”
是否会出现一种模式?
答案 0 :(得分:2)
试试这个sed:
sed 's/^\(.*\)#.*$/\1/'
或者这个更好的sed命令:
sed 's/#.*$//'
答案 1 :(得分:0)
假设#main足够具体,可以进行简单的查找和替换:
find . -name '*.html' -print0 | xargs -0 sed -i 's/#main//g'
答案 2 :(得分:0)
这是一个在命令行上使用perl的代码片段。它不是sed,但我手边有它:
perl -i -pe 's/#main//' *.html
要运行它并进行备份,您可以使用:
perl -pi.bak -e 's/#main//' *.html