bat函数编辑文件(添加行到文件的开头)

时间:2010-10-01 02:55:56

标签: windows batch-file

在我的bat脚本中,我用什么来打开一个名为open.txt的文件并将以下行添加到顶部

SOME TEXT TO BE ADDED

可以在.bat脚本中处理这样的小编辑

2 个答案:

答案 0 :(得分:6)

当然,有类似的东西:

copy original.txt temp.txt
echo.SOME TEXT TO BE ADDED>original.txt
type temp.txt >>original.txt
del temp.txt

第一行生成文件的临时副本。第二行用您要添加的行覆盖文件(特别注意添加的文本和>重定向操作符之间缺少空格 - echo有一个讨厌的习惯,即包含这些空格)。

第三行使用追加重定向操作符>>将原始文件添加到新文件的末尾,然后最后一行删除临时文件。

答案 1 :(得分:3)

你可以做简单的echo和重定向。但如果您可以下载sed for windows,请按以下步骤操作

C:\test> sed -i.bak "1 i text" file

如果无法下载,可以使用vbscript

strAddText= WScript.Arguments(0)
strFileName = WScript.Arguments(1)
Set objFS = CreateObject( "Scripting.FileSystemObject" )
Set objFile = objFS.OpenTextFile(strFileName)
WScript.Echo strAddText
Do Until objFile.AtEndOfStream
    WScript.Echo objFile.ReadLine
Loop    

使用:

C:\test> cscript //nologo myscript.vbs "text to add" myfile  > newfile