c# – 通过Mono上的System.Diagnostics.Process执行管道命令
发布时间:2020-12-15 08:20:36 所属栏目:百科 来源:网络整理
导读:是否可以通过System.Diagnostics.Process执行以下管道命令? echo "test" | sudo -S shutdown -r +1 我已经尝试将文件名设置为“/ bin / bash”,以上为参数,但没有成功. ...var processStartInfo = new ProcessStartInfo { FileName = "/bin/bash",Arguments
是否可以通过System.Diagnostics.Process执行以下管道命令?
echo "test" | sudo -S shutdown -r +1 我已经尝试将文件名设置为“/ bin / bash”,以上为参数,但没有成功. ... var processStartInfo = new ProcessStartInfo { FileName = "/bin/bash",Arguments = "echo "test" | sudo -S shutdown -r +1" }; process.StartInfo = processStartInfo; ... 解决方法
bash将您的命令解释为文件名后跟参数,这意味着它会调用echo并将所有其余的(包括管道)传递给它进行打印,这样您就可以进行测试了. sudo -S shutdown -r 1 echoed和sudo不会被执行.
您应该使用-c选项来执行命令.此外,您应该引用命令本身,以便它作为单个参数传递.这样的事情应该有效: var processStartInfo = new ProcessStartInfo { FileName = "/bin/bash",Arguments = "-c "echo test | sudo -S shutdown -r +1"" }; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- TR 18015技术报告中使用了哪些实施方案?
- c# – Dapper.NET多映射TSecond Deserializer为null
- ruby-on-rails – 角度资源没有调用我的错误回调函数
- c – 如何使用一个unordered_map,其中值类型是它所在的类?
- c# – Entity Framework中的SaveChanges vs SaveChangesAsy
- Oracle Connect By Prior(递归查询)简洁实例
- 利用tinyxml2读取xml文件
- 如何使用Qt Designer生成的ui文件
- Cocos Creator 获取和加载资源(摘自官方文档)
- Flex嵌入完整的html网页