Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Feb 2006 10:05:51 -0500
From:      James Bailie <jimmy@jamesbailie.com>
To:        Glenn Dawson <glenn@antimatter.net>
Cc:        questions@freebsd.org
Subject:   Re: script(1) > Why does it output in CR/LF?
Message-ID:  <440466CF.2000007@jamesbailie.com>
In-Reply-To: <7.0.1.0.2.20060228025256.039d9f68@antimatter.net>
References:  <7.0.1.0.2.20060228112857.0035f998@broadpark.no> <7.0.1.0.2.20060228025256.039d9f68@antimatter.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Glenn Dawson wrote:

 > At 02:30 AM 2/28/2006, Kristian Vaaf wrote:
 >
 >> Hello.
 >>
 >> I am just curious why the files I generate with script(1) output in 
CR/LF
 >> forcing me to run dos2unix on them everytime?
 >
 >
 > Script just captures the output of your shell, and your shell has to
 > send crlf in order to get the cursor back to the beginning of a line.

No it doesn't.  The script(1) utility interposes a
pseudo-terminal between the program whose output is to be
captured and itself, so the program thinks its running on a
terminal device and behaves accordingly.  Then script(1) acts
like a transparent filter, shuttling data back-and-forth from the
actual terminal to the pseudo-terminal, while sending a copy of
the program's output to the log file as well.  It is the terminal
driver in canonical mode, "inside" the pseudo-terminal, that is
expanding NLs in the proggy's output stream into CRNL pairs.

-- 
James Bailie <jimmy@jamesbailie.com>
http://www.jamesbailie.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?440466CF.2000007>