在 .NET 中,我正在运行这一行
var p = Process.Start(@"cmd", @"/C mklink /H c:\z\b c:\z\a\");
这一切正常,但我担心如果 mklink 的两个 args 之一有一个空间,这将无法正常工作。所以我在两个参数周围添加了“”。执行此行不再有效,当我写 \"" 时,它仍然无效。
执行时如何写引号cmd /C
?
在 .NET 中,我正在运行这一行
var p = Process.Start(@"cmd", @"/C mklink /H c:\z\b c:\z\a\");
这一切正常,但我担心如果 mklink 的两个 args 之一有一个空间,这将无法正常工作。所以我在两个参数周围添加了“”。执行此行不再有效,当我写 \"" 时,它仍然无效。
执行时如何写引号cmd /C
?
string sourcePath = @"c:\z\b";
string targetPath = @"c:\z\a";
string arguments = string.Format("\"{0}\" \"{1}\"", sourcePath, targetPath);
var p = Process.Start("cmd", "/C mklink /H " + arguments);
工作示例:
string sourcePath = @"c:\documents and settings\harvey robert\My Documents\Test.txt";
string targetPath = @"c:\test";
string s = string.Format("\"{0}\" \"{1}\"", sourcePath, targetPath);
Process.Start("cmd", @"/c copy " + s);
已复制 1 个文件。