我想中断我的输出日志记录线程以“确认”操作。
例如,我想安装php,因此键入sudo apt-get install php
。比起我必须使用y
来确认,我知道自己可以写sudo apt-get install php -y
。执行脚本时遇到相同的问题,必须填写必要的信息。
using (var client = new SshClient(ip, Convert.ToInt16(port), username, password))
{
client.Connect();
var command = client.CreateCommand((txtCommand.Text));
var result = command.BeginExecute();
//log vps output
using (var reader =
new StreamReader(command.OutputStream, Encoding.UTF8, true, 1024, true))
{
while (!result.IsCompleted || !reader.EndOfStream)
{
string line = reader.ReadLine();
if (line != null)
{
txtOutput1.Invoke(
(MethodInvoker)(() =>
txtOutput1.AppendText(line + Environment.NewLine)));
}
}
}
command.EndExecute(result);
client.Disconnect();
}
那么我如何中断线程以执行新命令来解决read
命令呢?
答案 0 :(得分:0)
使用通过shell构造的输入重定向将输入提供给脚本。
赞:
echo input | ./your_script.sh