在 Windows 的命令提示符(CMD)中,你可以使用多种方法在指定字符串后向文件中添加一行。以下是几种常见的方法:
findstr
和 for
循环你可以使用 findstr
命令找到指定字符串所在的行,然后使用 for
循环和 echo
命令将新行添加到文件中。
假设你有一个文件 example.txt
,内容如下:
line 1
line 2
line 3
你想在 line 2
后添加一行 new line
。
@echo off
setlocal enabledelayedexpansion
set "search=line 2"
set "newline=new line"
set "tempfile=temp.txt"
(for /f "tokens=*" %%A in (example.txt) do (
echo %%A
if "%%A"=="%search%" echo %newline%
)) > %tempfile%
move /y %tempfile% example.txt
你也可以使用 PowerShell 脚本来实现这一点。PowerShell 提供了更强大的文本处理功能。
powershell -Command "& {
$filePath = 'example.txt';
$search = 'line 2';
$newLine = 'new line';
$content = Get-Content $filePath;
$newContent = @();
foreach ($line in $content) {
$newContent += $line;
if ($line -eq $search) {
$newContent += $newLine;
}
}
$newContent | Set-Content $filePath;
}"
sed
(适用于 Git Bash 或 Cygwin)如果你在 Windows 上安装了 Git Bash 或 Cygwin,你可以使用 sed
命令来实现这一点。
sed '/line 2/a new line' example.txt > temp.txt && mv temp.txt example.txt
awk
(适用于 Git Bash 或 Cygwin)同样地,如果你在 Windows 上安装了 Git Bash 或 Cygwin,你可以使用 awk
命令来实现这一点。
awk '{print} /line 2/ {print "new line"}' example.txt > temp.txt && mv temp.txt example.txt
领取专属 10元无门槛券
手把手带您无忧上云