Grepから出力を取得し、変数部分を選択します。

Grepから出力を取得し、変数部分を選択します。

さて、似たような質問がありますが、まさに私が望むものではありません。

私はKubernetesを使用しているので、情報はそこから出てきますが、この質問はシェルスクリプトに関するものなので、Kubernetesの人々を非難しないでください。 :)

情報を取得するには、次のコマンドを実行します。

kubectl get pods -o wide --all-namespaces | grep sonarqube-

結果の例:

default       sonarqube-664b4fd48-g6nvb                   1/1       Running   0          4d        10.233.64.6     local-node-0

目標:私が望むのは、最初の2つの値(defaultsum sonarqube-664b4fd48-g6nvb)を取得し、スクリプトの他の場所で使用できる変数に変換することです。

変数を使用するコマンドの例は次のとおりです。

kubectl cp <file> ${namespace}/${deployment}:/opt/app/extensions/plugins/

ありがとうございます。追加情報が必要な場合はお知らせください。

ベストアンサー1

そして強く打つ~のread機能:

read -r namespace deployment other < <(kubectl get pods -o wide --all-namespaces | grep sonarqube-)
kubectl cp <file> "${namespace}/${deployment}:/opt/app/extensions/plugins/"

おすすめ記事