我正在使用Process
和ProcessStartInfo
执行Docker
命令。但是,它不适用于某些命令。这是我正在使用的代码和示例命令。在Docker Toolbox
命令行上执行时,所有这些命令都可以正常工作。
命令:
string command =“eval $(docker-machine env devmachine)”
ProcessStartInfo psi = new ProcessStartInfo();
psi.CreateNoWindow = true;
psi.FileName = @"C:\Program Files\Git\bin\bash.exe";
psi.WorkingDirectory = @"C:\Program Files\Docker Toolbox";
psi.Arguments = @"--login -i ""C:\Program Files\Docker Toolbox\start.sh"" " + command;
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.RedirectStandardInput = true;
psi.RedirectStandardError = true;
Process process = Process.Start(psi);
只有第3个命令不起作用,第1和第2个工作正常。我想知道是否有第三个命令需要转义的字符串。只有第3个命令包含$
,(
和)
字符