ワイルドカードパスで何かをgrepする方法は?


1

いくつかのRailsアプリでGemfileをgrepしたいです。しかし、各Railsアプリには多くのブランチがあり、そのうち最新のブランチ名は「メイン」と言います。

構造は次のようなものです。

workspace   
  rails-apps    
    rails-app1
      main
      feature-branch    
    rails-app2
     main
     feature-branch
     feature-branch2

だから私はこのようなことをしています:

grep -R "rails" /workspace/rails-apps/ --include="Gemfile"

しかし、これを行うと、私が望んでいないすべてのブランチのすべてのGemfileを把握します。mainブランチでGemfileのみをgrepする必要があります。

このようなもの: grep -R "rails" /workspace/rails-apps/*/main --include="Gemfile" しかし、それは動作しません。

回答:


1

これを試しましたか?

grep -R "rails" /workspace/rails-apps/*/main/Gemfile

このことでも動作しますgrep -R "rails" / workspace / rails-apps / * / main --include = "Gemfile"実際には、間違ったパスでgrepを実行していることに気づきませんでした。:(
uday

grepで「rails」というスタンドアロンの単語だけを使用したい場合はどうすればよいですか?
15

\ bで単語の境界をマークすることができます。「rails」を「\ brails \ b」に置き換えます。
サイラス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.