批处理文件,用于添加到文件夹的每个新文件更新文件

时间:2012-08-14 09:29:44

标签: batch-file

我有一个Html文件my.html,它有类似的链接:

<a href="1.html">1.html</a>

我如何制作批处理脚本(对于Windows,BAT文件)每次将新的Html文件添加到my.html添加新行的文件夹时,例如在添加 test.html 之后:

 <a href="test.html">test.html</a><br/>

1 个答案:

答案 0 :(得分:0)

Sed 1 非常适合这类事情。你可以这样做:

sed "s#\(<a href=.*>.*</a>\)#\1</br>#g" my.html > my_out.html


简短说明:
Sed命令如下所示:s#search_string#replace string#g

  1. s告诉Sed搜索和替换
  2. #是Sed命令的分隔符(可以使用任何字符)。
  3. 搜索字符串的模式是regular expression "<a href=.*>.*</a>"即。<a href=开头,后跟>,以</a>结尾的任何字符串。
    该模式包含在转义括号中, \(pattern\)。这允许Sed记住将此模式计算为\1的字符串的出现。
  4. 替换字符串为\1<br/>搜索字符串由其自身替换,末尾附加<br/>
  5. g告诉Sed重复该文件中所有出现的搜索字符串。
  6. 希望有所帮助!


    1 Sed也已移植到Windows(请参阅here)。