【发布时间】:2014-10-08 11:50:46
【问题描述】:
我正在使用控制台应用程序和 C# 来执行一些 AWS (S3) CLI 命令。我以为我让它工作了,因为大多数命令执行得很好。但是最后一个命令是sync,它不起作用。但我知道命令本身是正确的,因为复制粘贴到命令行窗口就可以了。以下是我目前所拥有的:
String commands = "echo echo & echo echo";
commands += " & aws s3 ls s3://bbbbbb";
commands += " & aws s3 sync C:\test\test2 s3://bbbbbb"; //this is the line that doesn't execute
//make this to use with a Process
ProcessStartInfo commandsToRun = new ProcessStartInfo("cmd", @"/c " + commands);
//make the Process and run it
Process process = new Process();
process.StartInfo = commandsToRun;
process.Start();
我没有任何错误或关于发生了什么的任何线索,我只是没有从最后一个命令中获得输出,如果我使用 ls 或 Cloudberry Explorer 进行检查,我可以看到什么都没有发生了。谁能告诉我这里发生了什么?谢谢!
【问题讨论】:
-
命令的工作目录重要吗?
-
只有一个命令,还是几个?你需要插入一些换行符吗?
-
工作目录无关紧要,因为给出的路径名是绝对的。
-
有几个,但我不知道我需要换行符。
echo命令和ls没有它们都可以正常工作。
标签: c# command-line amazon-s3 console-application command-line-interface