我在使用Process类在Linux系统上执行命令时遇到了问题。
我想要执行以下命令:rpm2cpio repo.rpm | cpio -divm
我已经尝试过:
process.StartInfo.FileName = "rpm2cpio;
rocess.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.Arguments = "repo.rpm | cpio - idmv";
但程序卡住了。
同样地,我尝试将从rpm2cpio保存的输出保存到一个字符串或输出文件中,然后将其作为cpio命令的参数传递,但它也卡住了。
process.StartInfo.FileName = "cpio";
rocess.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.Arguments = "-idvm < output.txt";
// or
process.StartInfo.Arguments = "-idvm < " + rp2cpio_output;
有哪些方法可以让这个工作起来?我看到这篇帖子提供了一个解决方案,但它是在Windows系统上。在Linux上如何实现相同的事情?