用于查看文本文档内容并在每行开头添加文本的脚本

时间:2012-07-24 15:28:49

标签: text document add

我只是想快速查看文本文档的内容,然后在每行的开头添加文本。每行在开头都会得到相同的文字。也许这是一个简单的脚本。任何想法或建议。感谢

3 个答案:

答案 0 :(得分:2)

其中一种简单的方法是使用 sed (流编辑器),它可以从文件或标准输入读取。它是逐行进行的,可以对整个文件或特定子范围应用内容修改。这就是你想要做的事情:

sed -i 's/^/TEXT/' FILENAME

-i 选项告诉sed“就地”编辑文件,这意味着它直接写入文件而不是转到stdout。原始文件被覆盖。如果您想保留原始数据,请忽略此选项,并通过附加>将输出通过管道传输到其他文件中NEWFILE 到上面的命令行。

sed中的 s 命令是搜索/替换。它将在每一行上用第二种模式替换第一种模式的第一次出现。您可以在末尾添加 g 以替换任何行中第一个模式的每个出现,但由于您匹配行的开头,因此这里不是特别有用的。

这里的第一个模式是 ^ ,它是正则表达式中的保留字符,表示行的开头。因此,在出现任何其他文本之前,它只会添加第二个模式 TEXT

当然,如果必须以这种方式批量处理许多文件,您可以从脚本中调用它。希望有所帮助。

答案 1 :(得分:0)

如果你想在跨平台上做到这一点,你可以写一个简短的python脚本。

inputFile = open("fileNameInput")
outputFile = open("fileNameOutput", "w")

for inputLine in inputFile:
    outputFile.write("your text" + inputLine + "\n")

inputFile.close()
outputFile.close()

答案 2 :(得分:0)

也可以在VB脚本中轻松完成。如果您正在寻找本机Windows解决方案,请使用此小脚本代码:

Set FSO = CreateObject("Scripting.FileSystemObject")

Set inputFile =  FSO.OpenTextFile("inputFilePath", ForReading)
Set outputFile = FSO.OpenTextFile("outputFilePath", ForWriting)

Do Until inputFile.AtEndOfStream

        outputFile.Write("Your Text" & inputFile.ReadLine)

Loop

inputFile.Close
outputFile.Close