Windows 命令行/批处理
使用find
或findstr
。
输出不匹配的行
find /V "green" file.txt
输出匹配线
find "green" file.txt
这些命令会将内容输出到控制台。根据需要将输出重定向到目标文件。例子:
find /V "green" file.txt > nonmatchingoutput.txt
键入find /?
或findstr /?
寻求帮助和所有选项。
更新更新的问题。
这将只使用 Batch 完成您要求的操作
:: Hide Commands
@echo off
:: Erase Existing Files
>match.txt ( <nul set /p "=" )
>nomatch.txt ( <nul set /p "=" )
:: Loop through Source and Generate Output
for /f "tokens=1,* delims=]" %%K in ('type temp.txt ^| find /V /N ""') do (
for /f "delims=" %%X in ('echo(%%L ^| find /V "green"') do (
echo(%%X>>nomatch.txt
echo.>>match.txt
)
for /f "delims=" %%X in ('echo(%%L ^| find "green"') do (
echo(%%X>>match.txt
echo.>>nomatch.txt
)
)