从C#执行Shell脚本文件#
问题描述:
我在Fedora中有一个名为的shell脚本文件run.sh。我想知道当我从C#代码执行此文件时,该文件是否会以超级用户权限的超级用户身份执行?据我所知,我们提供密码,只有我们是root用户。执行该文件run.sh从C#执行Shell脚本文件#
方法如下:如果你以root提升的权限运行你的C#程序
private String runCron()
{
ProcessStartInfo ps = new ProcessStartInfo();
ps.FileName = "/home/kc/test/run.sh";
ps.UseShellExecute = false;
ps.RedirectStandardOutput = true;
Process process = Process.Start (ps);
process.WaitForExit();
return "Success";
}
答
依赖。
如果你sudo你的C#programm,那么你将使用root权限运行下面的脚本。
如果你不sudo,如果你希望它以root权限运行,你必须以root身份登录。
或者脚本本身可以通过执行sudo su
来请求root权限。
你可以用超级用户权限运行你自己的C#脚本 – 2014-09-05 09:22:01
不,我的意思是在我上面提到的代码中,它会以超级用户权限运行吗? – 2014-09-05 09:27:37
如果以超级用户身份运行C#脚本,那么run.sh也将以超级用户身份运行 – 2014-09-05 09:28:50