我试图将HTML模板替换为一些自定义字符串的占位符。shell脚本,用于替换HTML文件的字符串
我做一个模板的卷曲在GitHub上:str=$(curl https://raw.github.com/toneworm/template-html5-sass/master/index.html)
保存以下变量: -
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="description" content="[name]">
<meta name="author" content="">
<title>[name]</title>
<link type="text/css" rel="stylesheet" href="css/styles.css" />
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<!-- scripts -->
<script type="text/javascript" src="js/main.js"></script>
</body>
</html>
我想要做全局替换[name]
用别的东西(在这个例子中TEST)。 ..
目前我有sed -i 's/\[name\]/TEST/g' $first > index.html
这引发以下错误: -
sed: 1: "<!DOCTYPE": invalid command code <
任何想法?
您应该双引号'$ first',否则分词和扩展名可能会产生意想不到的后果。 –
@GordonDavisson - 是的,你是对的 - 我编辑了我的答案。 –