[英]Sed insert variable containing UTF8 chars
我试图将通过sed
通过tree
生成的html目录结构插入到现有的html文件中。
问题:目录结构包含html标记和非ASCII字符:
<a href="Wiki">Wiki</a><br> ├── <a href="Wiki/Servers/">Servers</a><br> │ ├── <a href="Wiki/Servers/Plesk-Umzug.html">Plesk-Umzug.html</a><br> │ └── <a href="Wiki/Servers/web02.html">web02.html</a><br> ├── <a href="Wiki/SmartHome/">SmartHome</a><br> │ └── <a href="Wiki/SmartHome/Linksamlung/">Linksamlung</a><br> │ ├── <a href="Wiki/SmartHome/Linksamlung/Homematic.html">Homematic.html</a><br> │ └── <a href="Wiki/SmartHome/Linksamlung/Netzwerk-scripte.html">Netzwerk-scripte.html</a><br> ├── <a href="Wiki/tmp.html">tmp.html</a><br> └── <a href="Wiki/Verwaltung/">Verwaltung</a><br> ├── <a href="Wiki/Verwaltung/Bank.html">Bank.html</a><br> └── <a href="Wiki/Verwaltung/Zugangsdaten.html">Zugangsdaten.html</a><br> <br><br> </p>
如何告诉sed
将此文本插入文件?
sed -i "11i${MENU}" $FILENAME
返回以下错误: sed: -e expression #1, char 34: unknown command:
更新
添加了tr -cd '\\11\\12\\40-\\176'
来删除非ASCII字符。 当前的问题是HTML中的<
和>
char。 我想我需要逃脱吗?
错误消息是
sed: -e expression #1, char 35: unknown command: `<'
解
在python中重新实现。
如果您要在行号11之前插入sed
行,则语法会更清晰:
sed -i "11 i ${MENU}" $FILENAME
另外,请分享如何将html标记保存在变量中,您应该使用:
MENU='you html tag'
sed -i "11 i ${MENU}" $FILENAME
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.