0

デプロイされた Java アプリに関する情報を表示するユーティリティ スクリプトがあります。このスクリプトの出力例を次に示します。

名前: TestAPP

バージョン : スナップショット

タイプ : ear、ejb、webservices、web

ソースパス: /G/bin/app/TESTAPP_LIVE_1.1.9.1.1.ear

ステータス:有効

grep コマンドを使用してバージョンとソース パスの値を grep することはできますか? 現在、次のコマンドを使用してこれを行うことができます。

| | grep バージョン

ただし、値のみが必要な場合は、文字列全体 (バージョン: スナップショットなど) を出力します (たとえば、さらにスクリプト コマンドで使用するスナップショット)。

4

3 に答える 3

2

これが純粋なgrep解決策です。

-P正規表現モードのオプションと、-o一致するものだけを取得するオプションを使用します。

grep -Po "(?<=^Version : ).*"

ソースに対して行うことは次のとおりです。

grep -Po "(?<=^Source : ).*"

肯定的な後読みを使用します。

于 2013-04-26T12:50:25.150 に答える
2
grep Version | cut -d ':' -f 2 
于 2013-04-26T13:00:31.357 に答える
0

awk興味がある場合に使用するソリューションは次のとおりです。

grep Version | awk '{print $3}'

$3その行から 3 番目の単語を出力することを意味します。

ご了承ください:

  1. これは 1 つの単語のみを表示します
  2. これは、コロンの間にスペースがあることを前提としています (したがって、バージョンは実際には3 番目の「単語」です)。そうでない場合は、$2代わりに使用してください。
于 2013-04-26T13:06:50.380 に答える