как с c# изменить пароль в Ubuntu?
У меня получилось так, но это не работает
using (var client = new SshClient(Host, Port, AdminUsername, AdminPassword))
{
client.Connect();
var cmd = $"echo -e \"{password}\n{password}\n\" | sudo passwd {username}";
string escapedArgs = cmd.Replace("\"", "\\\"");
using (var command = client.CreateCommand(escapedArgs))
{
command.Execute();
Console.WriteLine(command.Result);
}
client.Disconnect();
}
это тоже не сработало
public static string Bash(string cmd)
{
string escapedArgs = cmd.Replace("\"", "\\\"");
Process process = new Process()
{
StartInfo = new ProcessStartInfo
{
FileName = "/bin/bash",
Arguments = $"-c \"{escapedArgs}\"",
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = true,
}
};
process.Start();
string result = process.StandardOutput.ReadToEnd();
process.WaitForExit();
return result;
}
using (var client = new SshClient(Host, Port, AdminUsername, AdminPassword))
{
client.Connect();
var cmd = client.RunCommand(Bash($"echo -e \"{password}\n{password}\n\" | sudo passwd {AdminPassword}")).Result;
client.Disconnect();
}
может что-то не так написано или я совсем не то делаю?