zaki work log

作業ログやら生活ログやらなんやら

(備忘録)bashのforループ

半年に1回くらいググってるのでいい加減メモしておこ

$ for image in `sudo docker images | grep ... | awk '{print $1}'`; do sudo docker push $image; done

docker rmiみたいに複数の引数を取れるものはxargs使えばいいけど、そうじゃない場合はforで。
いつも忘れるのがdodoneの前にターミネータの;が必要(または改行)

シェルスクリプトにする場合は改行入れたが方が見やすい

$ for image in `sudo docker images | grep ... | awk '{print $1}'`
do sudo docker push $image
done

doのあとにも改行OKだしインデント入れるともっと見やすい

$ for image in `sudo docker images | grep ... | awk '{print $1}'`
do
  sudo docker push $image
done

複雑じゃない処理ならxargs -n1でも行ける。

zaki-hmkc.hatenablog.com