Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在c语言中执行终端命令#_C#_Bash_Process - Fatal编程技术网

C# 如何在c语言中执行终端命令#

C# 如何在c语言中执行终端命令#,c#,bash,process,C#,Bash,Process,我读了很多帖子,其中有一篇 c#-打开终端进程并传递命令 我在代码中做了完全相同的事情 Process proc = new System.Diagnostics.Process (); proc.StartInfo.FileName = "/bin/bash"; proc.StartInfo.Arguments = "-c \" " + command + " \""; proc.StartInfo.UseShellExecute = false; proc.StartInfo.Redire

我读了很多帖子,其中有一篇

c#-打开终端进程并传递命令

我在代码中做了完全相同的事情

Process proc = new System.Diagnostics.Process ();
proc.StartInfo.FileName = "/bin/bash";
proc.StartInfo.Arguments = "-c \" " + command + " \"";
proc.StartInfo.UseShellExecute = false; 
proc.StartInfo.RedirectStandardOutput = true;
proc.Start ();
其中命令=导出显示=:0.0

这是我的捕获,“applicationname='/bin/bash',CommandLine='-c”cd。。“,CurrentDirectory=”,本机错误=系统找不到指定的文件。”


我有什么不同的做法?即使我尝试只设置command=“cd..”它也不起作用

您可能应该尝试设置可执行文件的完整路径

proc.StartInfo.FileName = "C:/SOMEPATH/Bash.exe";

我假设当您指定相对路径时,它不会解析它。可能是因为您没有为进程设置工作目录,所以它的当前目录与您认为它的当前目录不同。

“转到您的捕获”,您能告诉我们捕获中的错误是什么吗?特别是错误类型和它包含的消息。抱歉,尽管我说了。现在的问题是在哪里设置StartInfo.FileName-我注意到这是一个相对路径而不是完整路径。您是否尝试过指定exe的完整路径,以防它无法解决导致问题的正确路径?您是在Windows上运行此操作,还是通过Mono在Linux上运行此操作?@Darrell这是Linux系统上的完整路径。非常感谢,正如您所说的!!但是为了调试的目的,它在windows上。。。windows 7上bin bash的路径是什么??我怎样才能找到它?@CherrysaHerrim除非你安装了bashshell,否则Windows上没有bashshell。此外,在shell中执行
cd
命令没有任何好处(它不会影响正在运行的应用程序的当前工作文件夹)。