使用相同参数的单行样板代码

使用相同参数的单行样板代码

有没有一个好的单行命令可以让这三个命令使用相同的参数并且$IMAGE只使用一次?

docker build -t $IMAGE .
docker push $IMAGE
docker rmi $IMAGE

带有数组和循环的东西?

答案1

定义一个函数:

bpr() { docker build -t "$1" .; docker push "$1"; docker rmi "$1"; }

现在,无论何时您想在同一图像上执行这三个命令,请运行:

bpr "$Image"

笔记

  1. 如果您希望使该函数定义永久有效,请将该定义放入您的~/.bashrc文件中。

  2. 最佳实践是使用大小写混合或小写名称来命名您的 shell 变量。系统使用大写名称来命名变量,您肯定不希望意外覆盖其中一个变量。

  3. 请注意,$1上面的双引号内。除非你明确想要单词拆分或者路径名扩展,将对 shell 变量的引用放在双引号中。

  4. {在 bash 中,空格很重要。具体来说,在函数定义中,必须在后面留出空格。

相关内容