6
3
I'm trying to write a Windows cmd.exe
script to count the occurrences of aes
after compiling a program from the command line. Its simply an Audit/QA script to ensure we're getting what we expect.
When I use findstr
without the pipe, it appears to work fine:
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
...
As soon as I pipe the result to find /c
to count occurrences, things blow up. Not only does find
not work as expected, it manages to break the proceeding findstr
command.
cryptopp-5.6.3>dumpbin /disasm Win32/cryptlib/Debug/rijndael.obj | findstr aes | find /c aes
FIND: Parameter format not correct
FINDSTR: Write error
According to find /?
:
If a path is not specified, FIND searches the text typed at the prompt
or piped from another command.
How do I pipe the output of findstr
to the input of find
?
2
The question has been satisfactorily answered by adding a
– G-Man Says 'Reinstate Monica' – 2017-11-17T22:28:21.210"
before the search string and another at the end. If that doesn’t work for you, that suggests that you have a different situation. The fact that you’re talking about “POSH”, which is not mentioned in the question, supports that. If you believe that your problem (whatever it is) applies to other people, you should ask a new question, describe your situation, and post your own answer. (You may be subjected to a brief delay before the system will let you answer your own question.)1this answer is correct. I'm using power shell in ConEmu and need to use triple quotes. Please revert your downvote. – Amadeusz Wieczorek – 2018-01-10T21:32:56.277
2Seconding that this works/is needed using vanilla powershell on Win 10, where I was having the same problem. – Nat Bowman – 2018-08-02T18:31:17.533
I assume "POSH" means Powershell. I've never seen that term before. Confirmed this works for me though. So stupid that this is needed! – Ben – 2018-09-27T22:26:09.690