Windowsコマンドライン/バッチ
find
またはを使用しfindstr
ます。
一致しない行を出力する
find /V "green" file.txt
マッチングラインを出力
find "green" file.txt
これらのコマンドは、コンテンツをコンソールに出力します。必要に応じて、出力を宛先ファイルにリダイレクトします。例:
find /V "green" file.txt > nonmatchingoutput.txt
find /?
またはを入力findstr /?
してヘルプとすべてのオプションを入力します。
更新された質問の更新。
これは、バッチのみを使用してあなたが求めることを行います
:: 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
)
)