Tradicionalmente, em alguns contextos, existe um 'caractere' de fim de arquivo - MS-DOS / CMD.EXE usa CTRL + Z - Linux usa CTRL + D
CTRL-Z é o código 26, CTRL-D é o código 4 na tabela ASCII.
Estes ainda estão em uso em situações em que você usa stdin
(no significado aplicado na programação "C" e no console geral / tty IO).
por exemplo.
C:\> copy con myFile.txt This is text to go into the file.Enter CTRL+Z C:\> type myFile.txt This is text to go into the file. C:\>
A mesma sequência funciona no Linux'en com a diferença que você começa com
$ cat >myFile
e finalizar com CTRL + D e, em seguida, cat myFile.txt
em vez de type
.
Se você estiver programando, dificilmente verá quaisquer efeitos desses caracteres.
Eu estou neste momento escrevendo não ciente de qualquer chamada de função que iria parar nesses caracteres.
Leia a documentação do seu software / biblioteca - se não houver nenhuma declaração sobre o efeito disso, você provavelmente não verá nada de estranho acontecer.
Endings de linha - combinações CR e LF, código 13 e 10 - é um pouco diferente, mas pode ficar bastante confuso se você transferir arquivos de texto de um sistema para outro.
unix2dos
e dos2unix
são comandos shell disponíveis no Linux'en - para este propósito.
Sessão de bash de amostra:
$ echo -e "First line\n\x04Second line." First line Second line. $ echo -e "First line\n\x04Second line." | od -t x1z 0000000 46 69 72 73 74 20 6c 69 6e 65 0a 04 53 65 63 6f >First line..Seco< 0000020 6e 64 20 6c 69 6e 65 2e 0a >nd line..< 0000031 $ echo -e "First line\n\x04Second line." | grep line First line Second line. $ cat >myFile.txt Check this out $ cat myFile.txt Check this out $