質問: パイプでの「find:パラメータの形式が正しくありません」および「findstr:書き込みエラー」 コマンドラインからプログラムをコンパイルした後、aesの発生をカウントするwindows cmd.exeスクリプトを記述しようとしています。期待どおりの結果が得られるようにするための単純な監査/ qaスクリプトです。パイプなしでfindstrを使用すると、正常に動作するようです:cryptopp-5.6.3>dumpbin /disasm win32/cryptlib/debug/rijndael.obj | findstr aes 000000c1: 66 0f 3a df c0 00 aeskeygenassist xmm0,xmm0,0 00000206: 66 0f 3a df c0 00 aeskeygenassist xmm0,xmm0,0 00000345: 66 0f 38 db 04 81 aesimc xmm0,xmmword ptr [ecx+eax*4] 00000366: 66 0f 38 db 04 81 aesimc xmm0,xmmword ptr [ecx+eax*4] 0000039f: 66 0f 38 db 04 81 aesimc xmm0,xmmword ptr [ecx+eax*4] 00000078: 66 0f 38 dc c8 aesenc xmm1,xmm0 000000ab: 66 0f 38 dc c8 aesenc xmm1,xmm0 ... 結果をfind /cにパイプしてオカレンスをカウントするとすぐに、問題が爆発します。 findが期待どおりに機能しないだけでなく、進行中のfindstrコマンドを壊してしまいます。cryptopp-5.6.3>dumpbin /disasm win32/cryptlib/debug/rijndael.obj | findstr aes | find /c aes find: parameter format not correct findstr: write error find /?によると:if a path is not specified, find searches the text typed at the prompt or piped from another command. findstrの出力をfindの入力にパイプするにはどうすればよいですか?
回答: find /c "foo"のパラメーターには引用符を使用します。