in reply to Net::Telnet problems with Net::Telnet in handling inputs

From the Net::Telnet doc:
The output record separator for print() and cmd() is set to "\n" by de +fault, so that you don't have to append all your commands with a newl +ine. To avoid printing a trailing "\n" use put() or set the output_re +cord_separator to "".
Which means whenever you use 'print' or 'cmd' it will send a newline, whether you wanted one or not.
Further:
In the input stream, each sequence of carriage return and line feed (i +.e. "\015\012" or CR LF) is converted to "\n". In the output stream, +each occurrence of "\n" is converted to a sequence of CR LF. See binm +ode() to change the behavior. TCP protocols typically use the ASCII s +equence, carriage return and line feed to designate a newline.
Eg: All newlines are sent as "\r\n", as that is how Telnet does newlines.

Maybe you should show some code where you tried changing the output_record_separator, or try using put() ?

C.