如何用参数执行shell命令?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用参数执行shell命令?相关的知识,希望对你有一定的参考价值。
我试图用C#中的参数执行shell命令,并抛出“系统找不到指定的文件”。
我试过了:
p.StartInfo.FileName = Directory.GetCurrentDirectory() + "\timesync\NistClock.exe sync";
路径是正确的100%NistClock.exe在没有参数“sync”的情况下运行时执行
答案
你应该改变你的代码:
p.StartupInfo.FileName = Path.Combine(Directory.GetCurrentDirectory(), "timesync\NistClock.exe");
p.StartupInfo.Arguments = "sync";
另一答案
string path = Directory.GetCurrentDirectory() + "\timesync\NistClock.exe";
string args = "sync";
ProcessStartInfo p = new ProcessStartInfo(path, args);
Process process = Process.Start(p);
另一答案
使用Arguments
属性。
p.StartInfo.FileName = Directory.GetCurrentDirectory() + "\timesync\NistClock.exe";
p.StartInfo.Arguments = "sync";
顺便说一句,小心使用Directory.GetCurrentDirectory()
。请注意,如果您在整个应用程序中使用任何文件对话框,则此方法可以返回不同的内容。使用像Assembly.GetExecutingAssembly().Location
这样的东西可能是更好的选择,并从那里解析目录。
以上是关于如何用参数执行shell命令?的主要内容,如果未能解决你的问题,请参考以下文章