bash - 具有for循环的单行bash函数

标签 bash docker loops

这个bash函数使我可以运行X次任何命令:

run() {
    number=$1
    shift
    for i in `seq $number`; do
      $@
    done
}

我的问题是我需要将其添加到docker shell中。我认为最简单的方法是将功能定义添加到DockerFile中的RUN命令中,以将其添加到制作 shell 的镜像中。但它不会接受多行。在每个末尾(最后一个末尾除外)添加“\”不起作用,并且任何换行符组合都无济于事。我还尝试消除了反响-没有运气。

所以我想:“很好-我将它做成单线。”而且,我所做的任何尝试都无法使语法正确执行。

有人可以帮助我使它成为单行定义,还是可以帮助我让DockerFile将其接受为多行?

最佳答案

这是单行函数定义:

run () { number=$1 ; shift ; for i in `seq $number` ; do $@ ; done }

但是,它是否适用于docker是另一个问题。

关于bash - 具有for循环的单行bash函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59537195/

相关文章:

Docker可以创建一个新的swarm

docker - 从同一个 docker-compose 文件构建时的随机容器名称

docker - 输入新的Docker镜像时返回空PATH

PHP - foreach 循环带有条件,无需额外的内部 IF 语句

javascript - jQuery:每个循环都有问题

linux - 如何使用 bash 脚本在不同的文件夹中运行可执行文件?

python - 如何使用 "at"unix 命令直接从终端调度 python 脚本?

php - 处理 php 中的空循环

bash - 如何通过命令行选项加载不同的 zshrc 文件?

bash - 使用 bash 脚本以自然顺序列出文件夹中的文件