プロンプト経由では検索とGrepが正常に動作するが、Jenkins経由では動作しない

プロンプト経由では検索とGrepが正常に動作するが、Jenkins経由では動作しない

以下のコマンドを使用しfindていくつかのファイルをフィルタリングしようとしています:grep

find . -type f -exec grep -q --exclude=*.{cpp,gradle,java,ttf,txt,xml,md} . {} \; -and -print

面白いのは、サーバー プロンプトのコマンドでは正常に動作するのですが、シェルのビルド ステップではうまく動作しないということです。これは、{}ファイルの種類を囲む を削除して、たとえば を残すと--exclude=*.java動作するためです。

私の質問は次のとおりです:

  1. どうしたの?
  2. 正規表現で別の方法で実行できますか?

答え1

問題は、サーバーをテストしていたbashのに、Jenkins が を使用するように設定されていたことですsh。この設定を修正すると、シェル スクリプトが で実行されるように設定され、/bin/bash正常に動作するようになりました。

関連情報