我正嘗試使用FINDSTR
commanand和cmd.exe
來生成包含特定字符串的輸入文件中所有行的文件。我下面的命令不會產生任何結果,而FIND
命令(下文)顯示,有包含字符串182688行我找...命令提示符中的FINDSTR
find命令:
FIND /c "searchstring" c:\Users\karl\Desktop\Report.csv
給出以下:
---------- C:\USERS\KARL\DESKTOP\REPORT.CSV: 182688
FINDSTR命令:
findstr /i /c:"searchstring" c:\Users\karl\Desktop\Report.csv > results.out
給了我一個叫做results.out的空白文件。
我錯過了什麼?
究竟什麼是你的'searchstring'?我現在看到的最可能的罪魁禍首是你的搜索字符串的行爲不是你在'findstr'命令中打算的行爲;你打算作爲一個字符串被解釋爲具有意想不到的特殊意義的正則表達式符號。 – rojo 2013-03-07 19:01:05
@rojo - 我同意,搜索字符串可能不會按照需要進行解釋。但它不能成爲正則表達式的問題,因爲'/ c'選項默認爲文字搜索,除非添加'/ r'選項。 – dbenham 2013-03-07 20:07:27
@dbenham - 例如'findstr/i/c:「* abcd *」'會搜索文字(星號)abcd(星號),而不是包含'abcd'的字符串?這清除了一些長時間的混亂。直到現在,我只是避免在表達式中使用空格,所以我不必在'findstr'中使用'/ c'開關。呵呵。 – rojo 2013-03-07 20:14:24