我正在尝试做这些事情(使用JSch库)......
我在第1步和第4步取得了成功:
Channel channel = session.openChannel("exec");
channel.setInputStream(null);
((ChannelExec) channel).setCommand("whoami");
channel.connect();
这给了我预期的输出。 但是,当我做这样的事情时,即添加数字2:
((ChannelExec) channel).setCommand("sudo su - user; whoami");
用户未被更改。
我尝试的另一种方法是打开" shell"通道,但它永远挂起,等待输入,我想。即使我找到了解决这个等待问题的方法," shell" channel不会是解决这个问题的首选方法,因为我需要一个格式良好的输出命令我运行 - " shell"通道输出看起来像一个真正的终端状态,包含所有空行,提示等等...
任何帮助都将受到高度赞赏......