当前位置: 首页 > 面试题库 >

我如何在C#控制台应用程序中执行CMD命令?

越国源
2023-03-14
问题内容

cmd在Windows上制作mysqldump非常简单,只需:

打开cmd并放入mysqldump uroot ppassword数据库> c:/data.sql

这将为所需的数据库生成一个SQL转储文件。

我正在编写一个控制台应用程序,因此我可以运行以下命令:

-uroot -ppass databse  > location\data.sql

我尝试以下代码无济于事:

System.Diagnostics.ProcessStartInfo procStartInfo =
    new System.Diagnostics.ProcessStartInfo("cmd", "/c " + cmd);

如何启动cmd进程并成功发送命令?


问题答案:

为什么不直接调用mysqldump是有原因的?

ProcessStartInfo procStartInfo = 
    new ProcessStartInfo("mysqldump", "uroot ppassword databse > c:/data.sql");

如果 有原因的,你的代码应该是这样的:

ProcessStartInfo procStartInfo = 
    new ProcessStartInfo("cmd", 
        "/c \"mysqldump uroot ppassword databse > c:/data.sql\"");

变化:

  • 您在cmd变量中缺少“ mysqldump”的位置。
  • 您应该在命令行中将要执行的命令放在引号中。


 类似资料:
  • 我有一个 .NET Core 控制台应用程序并运行了 。但是,我不知道如何从命令行运行应用程序。有什么提示吗?

  • 问题内容: 我正在使用Dockerfile创建Docker映像。我想在启动Docker容器时执行一些脚本。目前,我有一个Shell脚本来执行所有必要的过程 CMD [“ sh”,“ start.sh”] 我想用在后台示例中运行的进程执行shell命令 CMD [“ sh”,“-c”,“ mongod –dbpath / test&”] 问题答案: 除了对您的问题的评论已经指出有关Docker最佳实

  • 我正在使用DockerFile创建一个docker图像。我想在启动docker容器的同时执行一些脚本。目前我有一个shell脚本来执行所有必要的进程 CMD[“sh”,“start.sh”]

  • 我有一个部分扎根的Android设备。所谓部分root,是指我只能通过ADB运行root命令。我已经想出了如何在设备本身的终端模拟器中本地运行这些命令。我的问题是,我将如何着手编写Android应用程序的代码,从按钮按钮执行一个ADB命令(或多个命令)?我找不到任何解释如何通过应用程序界面运行直接ADB命令的东西。只是为了澄清,任何涉及“su”的东西都不会在这个设备上工作。它只接受ADB输入进行根

  • 我需要调用微软图形API在Azure广告中创建用户。 首先,我需要测试从控制台应用程序,然后需要实现在Azure函数。 https://developer.microsoft.com/en-us/graph/graph-explorer

  • 我有一台服务器(Ubuntu 14.04.4 LTS),并希望某个Java应用程序一直在其上运行。目前我使用