通过Powershell

时间:2017-07-05 14:01:13

标签: powershell docker sh docker-compose

我目前正在尝试启动另一个控制台(.exe)并传递多个命令;虽然启动和输入命令工作正常,但我还没有找到如何通过powershell输入多个命令。

& "C:\Program Files\Docker Toolbox\start.sh" docker-compose up -d --build

给定的命令工作正常,但如上所述,我需要传递多个命令 - 我尝试使用数组,ScriptBlocks和不同的序列,但无济于事。

修改

注意到docker build有一个允许我指定文件的-f标记;然而,现在的问题似乎是执行的cmd删除了所有反斜杠&特殊字符,渲染路径无用。

示例:

&"C:\Program Files\Docker Toolbox\start.sh" 'docker-compose build -f 
path\to\dockerfile'

将导致错误,指出"pathtodockerfile"是无效路径。

2 个答案:

答案 0 :(得分:0)

您的start.sh需要能够处理多个参数。这看起来不像PowerShell问题

答案 1 :(得分:0)

事实证明这比预期的要容易;通过执行包含所需的两个命令的单独文件并将其传递给start.sh文件来解决它。

&"C:\Program Files\Docker Toolbox\start.sh" './xyz/fileContainingCommands.sh'