2013-08-02 10 views
8

1つの文字列を検索したいと思います。私のプロジェクトではWindows OS上で "main"を再帰的に使用します。私はそれを検索し、解決策を見つけるWindows recursive grep command-lineWindows上で再帰的に1文字列を検索するOS

私は2つの異なるアプローチで同じことを適用し、結果は期待通りではありません。

私のアプローチ

findstr /S "main" *.cpp 

が、私は

findstr /S "int main" *.cpp 

を選択したとき、私は私の主な機能を取得しておりません。 これらの2つのアプローチの違いは何ですか?文字列にスペースを与えるのは間違っていますか?

+2

なぜこれが 'C++'にタグ付けされていますか? – P0W

+1

@ P0W ..私は実際に私のプロジェクトでC++ファイルを使用しています。それがタグの価値がない場合、私はそれを削除することができます。 – someone

+0

@Krishnaとその既に削除された! – P0W

答えて

14

これは、がを検索するために文字列を受け取るためです。あなたのバリアントがあなたにintまたはmainのいずれかですべての行を与えるのに対し、

findstr /s /C:"int main" *.cpp 

:あなたは/Cオプションを使用する必要がint main実際の文字列にマッチします。

+0

@Joey ...ありがとう...私は期待した結果を得ました... – someone

1

ここパーティー後半の種類、 いますが、

findstr /S "int.main" *.cpp 

を使用する場合には、ワイルドカードとしてドットを扱います、 スペースにマッチし、限り、あなたは として気にしませんいくつかの余分な試合(これはありそうもない) それはあなたのために正常に動作します。

私はこれを使用していますが、上記の答えを読む前に/ C:オプションについて知りませんでした。

関連する問題