End-of-transmission Character - Meaning in Unix

Meaning in Unix

The EOT character in Unix is different from the Control-Z in DOS. The DOS Control-Z byte is actually sent and/or placed in files to indicate where the text ends. In contrast the Control-D causes the Unix terminal driver to signal the EOF condition, which is not a character, while the byte has no special meaning if actually read or written from a file or terminal.

In Unix the end-of-file character (by default EOT) causes the terminal driver to make available all characters in its input buffer immediately; normally the driver would collect characters until it sees an end-of-line character. If the input buffer is empty (because no characters have been typed since the last end-of-line or end-of-file), a program reading from the terminal reads a count of zero bytes. In Unix, such a condition is understood as having reached the end of the file.

This can be demonstrated with the cat program on Unix-based operating systems such as Linux: Run the cat command with no arguments, so it accepts its input from the keyboard and prints output to the screen. Type a few characters without pressing ↵ Enter, then type Ctrl+D. The characters typed to that point are sent to cat, which then writes them to the screen. If Ctrl+D is typed without typing any characters first, the input stream is terminated and the program ends. An actual EOT is obtained by typing Ctrl+V then Ctrl+D.

If the terminal driver is in raw mode it no longer interprets control characters, and the EOT character is sent unchanged to the program, which is free to interpret it any way it likes. A program may then decide to handle the EOT byte as an indication that it should end the text, this would then be similar to how Ctrl+Z is handled by DOS programs.

Read more about this topic:  End-of-transmission Character

Famous quotes containing the words meaning in and/or meaning:

    Parents must not only have certain ways of guiding by prohibition and permission; they must also be able to represent to the child a deep, an almost somatic conviction that there is a meaning to what they are doing. Ultimately, children become neurotic not from frustrations, but from the lack or loss of societal meaning in these frustrations.
    Erik H. Erikson (20th century)

    Ideas improve. The meaning of words participates in the improvement. Plagiarism is necessary. Progress implies it. It embraces an author’s phrase, makes use of his expressions, erases a false idea, and replaces it with the right idea.
    Guy Debord (b. 1931)