title: `No such file or directory` when running a c# executable in linux from within another C# executable
body: <p><strong>I am trying the following:</strong></p>
  
  <p>1) Running a c# executable from another executable. </p>
  
  <p><em>I am using .net core 3.1</em></p>
  
  <p><strong>Problem</strong></p>
  
  <ul>
  <li>I get the following error when I run the app in linux.</li>
  </ul>
  
  <pre><code>Error =&gt;No such file or directory    
   Exception encountered =&gt; System.ComponentModel.Win32Exception (2): No such file or directory
    at System.Diagnostics.Process.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean
    redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Boolean
    setCredentials, UInt32 userId, UInt32 groupId, UInt32[] groups, Int32&amp;
    stdinFd, Int32&amp; stdoutFd, Int32&amp; stderrFd, Boolean usesTerminal,
    Boolean throwOnNoExec)
           at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo)
           at System.Diagnostics.Process.Start()
           at ConsoleMQTT_Sender.ProcessClass.LaunchProcess(....) in ...
  </code></pre>
  
  <p>The app is generated through jenkins running in a linux environment.</p>
  
  <p>The file is present but getting the above error.</p>
  
  <p>Is this a cross-platform issue?
  or a permission issue?</p>
  
  <p><strong>Flag when running the first executable</strong></p>
  
  <ul>
  <li>dotnet firstexecutable.dll --secondexecutablepath "/opt/publish/xyz.dll"</li>
  <li>dotnet firstexecutable.dll --secondexecutablepath "dotnet /opt/publish/xyz.dll"</li>
  </ul>
  
  <p>both giving the same exception</p>
  
  <p><strong>How I am triggering the executable inside c# console app :</strong></p>
  
  <pre><code>            process.EnableRaisingEvents = true;
              process.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(process_OutputDataReceived);
              process.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(process_ErrorDataReceived);
  
              process.StartInfo.FileName = firstexecutablepath;
  
                  process.StartInfo.Arguments = "--secondexecutablepath \"" + executablepath + "\"";
              process.StartInfo.RedirectStandardError = true;
              process.StartInfo.RedirectStandardOutput = true;
  
              process.Start();
              process.WaitForExit();
  </code></pre>