批量向文本添加行

问题描述 投票:0回答:1

首先,由于英语不是我的母语,因此可能存在拼写错误。对此我深感抱歉。

我有大约 300 个 txt 文件。我想将我想要的行添加到每个文件的第一行。如何批量处理 300 个文件?

例如,我想在txt文件的第一行添加“testfiles”一词

正常文件内容

测试-主机- teswordshere 1mayis.txt
测试-主机- teswordshere 1mayis.txt
测试-主机- teswordshere 1mayis.txt
测试-主机- teswordshere 1mayis.txt
测试-主机- teswordshere 1mayis.txt
测试-主机- teswordshere 1mayis.txt

我想要的文件内容

测试文件

测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt

此外,正如您在上面的示例中看到的,txt 文件包含文本 1mayis.txt。我想将此文件名更改为其所在文件的名称。

例如

文件名称:Trial_007(228).txt

文件内容

测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt
测试-主机- teswordshere >> c:\ping mayis.txt

我想要的文件内容

测试-主机- teswordshere >> c:\ping\deneme_007(228).txt
测试-主机- teswordshere >> c:\ping\deneme_007(228).txt
测试-主机- teswordshere >> c:\ping\deneme_007(228).txt

将每个文件中的这部分替换为文件的原始名称。

有办法做到这一点吗?

我尝试手动将它们一一添加,但这样做需要几个小时。而且,我必须每 15 天做一次这个过程。

replace text-files line bulk automatic-updates
1个回答
0
投票

替换包含以下内容的所有文件中的所有实例:

test -host- teswordshere 1mayis.txt

test -host- teswordshere >> c:\ping\1mayis.txt

在 Linux/Mac 操作系统中,使用

sed -i "s/search_string/replace_string" filename

sed -i "s/ 1mayis.txt/ >> c:\ping\1mayis.txt/g" filename
© www.soinside.com 2019 - 2024. All rights reserved.