2つの内容を変数として同時に読む必要があります

2つの内容を変数として同時に読む必要があります

両方の変数に対して同じラベルを持つ以下のファイルを読み取る必要があります。

 cat images_new.txt
/proj-bssf/adp-log/release/eric-data-search-engine-pm-metrics:4.0.0-23
/proj-document-database-pg/data/eric-data-document-database-bra:3.3.0-20
/proj-orchestration-so/eric-eo-api-gateway:1.0.1-41
/proj-am/releases/eric-am-common-wfs-ui:0.0.217-1

"/proj-bssf/adp-log/release/eric-data-search-engine-pm-metrics"を1つの変数として読み、4.0.0-23を別の変数としてタグ付けする必要があるのと同じです。

オブジェクトは、単一のスクリプトを使用してdockerのプライベートレジストリからイメージの要約情報を取得する2つの方法です。

答え1

努力する

while IFS=: read f v 
do
   echo "f $f"
   echo "v $v"
done < file

これは

f /proj-bssf/adp-log/release/eric-data-search-engine-pm-metrics
v 4.0.0-23
f /proj-document-database-pg/data/eric-data-document-database-bra
v 3.3.0-20
f /proj-orchestration-so/eric-eo-api-gateway
v 1.0.1-41
f /proj-am/releases/eric-am-common-wfs-ui
v 0.0.217-1

どこ

  • IFS=::区切り文字として使用するように読み取りに指示する

また、使用することができます

cat file | while IFS=: read f v 
do
   ## more than 50 lines of code
   echo "f $f"
   echo "v $v"
done
  • 猫の役に立たない使い方に代わって
  • ループが長いと読みやすくなります。
  • そうすれば、反対票を投げるでしょう。

関連情報