如何使用命令行添加行

时间:2014-10-28 12:15:35

标签: html shell command-line command

我有一个HTML文档,其中我想在body标签之后自动插入图像:

html:

<body>
    <div class="indexHeader"><a href="allclasses-frame.html" target="packageFrame">All Classes</a>
</div>
....

<body>标记之后,我想使用命令行添加图像,结果如下:

<body>
    <img src="resources/logo_small.png" alt="My image" height="80" />
    <div class="indexHeader"><a href="allclasses-frame.html" target="packageFrame">All Classes</a></div>

如何在命令行中实现此目的? 注意:我正在使用Windows

这些是我的尝试: 首先尝试:

awk -v image='<img src="resources/logo_small.png" alt="My image" height="80" />' '1; /<body>/ {print image}' overview-frame.html

结果: 系统找不到指定的文件。

第二次尝试:

sed 's?<body>?<body>\n\t<img src="resources/logo_small.png" alt="My image" height="80" />?g' overview-frame.html

结果: 系统找不到指定的文件。

2 个答案:

答案 0 :(得分:1)

出于这个特殊目的,您可以这样使用sed

sed 's?<body>?<body>\n\t<img src="resources/logo_small.png" alt="My image" height="80" />?g' filename

其中filename是包含html代码的文件。上一行将在屏幕上打印更新的文件,但不会将修改保存在文件中:使用-i sed选项执行此操作。

此解决方案非常针对您所曝光的问题,如果您需要更复杂的修改,请阅读man sed或google for sed示例。

答案 1 :(得分:0)

我终于可以使用这段代码了解它:

sed -i "s#<body>#<body>\n\t<img src='resources/logo_small.png' alt='FacePhi Biometria' height='80' />#" filename