我正在编写一个脚本,它将从txt文件中读取一些数据,然后使用其他文件中的数据生成一个html文件。我有以#开头的行,我必须跳过 - 这已经完成了。但问题是,当我阅读文件时,我必须跳过单词<head>, </head>, <body> and </body>.
我没有排除问题,我正在使用:
cat ~/linux/footer.txt | sed 's/<head>//g' > ~/linux/footer_temp.txt
但问题出在</head> and </body>
...
任何建议我可以使用什么以及如何使其工作?
由于
答案 0 :(得分:3)
如果你的模式中有斜杠,sed将允许你使用不同的字符作为分隔符,例如:
sed 's|</head>||g'
答案 1 :(得分:0)
这可能适合你(GNU sed):
sed -r 's#</?(head|body)>##g' file
或:
sed 's/<\/\?\(head\|body\)>//g' file
这使用#
作为替换定界符,?
元字符表示一个没有(在本例中为/
),并将分组和替换匹配为head
或body
。