class Chef::Knife::Ssh

def read_line

line is input.
history, unless the input is empty. Loops repeatedly until a non-empty
detects ^D and returns "exit" in that case. Adds the input to the
Present the prompt and read a single line from the console. It also
def read_line
  loop do
    command = reader.readline("#{ui.color("knife-ssh>", :bold)} ", true)
    if command.nil?
      command = "exit"
      puts(command)
    else
      command.strip!
    end
    unless command.empty?
      return command
    end
  end
end