我目前正在尝试启动另一个控制台(.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"
是无效路径。
答案 0 :(得分:0)
您的start.sh
需要能够处理多个参数。这看起来不像PowerShell问题
答案 1 :(得分:0)
事实证明这比预期的要容易;通过执行包含所需的两个命令的单独文件并将其传递给start.sh文件来解决它。
&"C:\Program Files\Docker Toolbox\start.sh" './xyz/fileContainingCommands.sh'