#include <unistd.h> ssize_t read(int fd, void *buf, size_t count);
Valor de retorno: número de bytes lidos, 0 ou EOF para indicar o fim de linha, ou -1 em caso de erro. Não é um erro retornar um número de bytes menor do que foi especificado (isto pode acontecer se o read() for interrompido por um sinal ou quando poucos bytes estão disponíveis momentaneamente).
Esta primitiva lê os nbytes bytes no arquivo aberto representado por fd, e os coloca dentro do buffer apontado por buf.
Observação:
As operações de abertura de arquivos (semelhantes a open()),
e de duplicação de descritores (semelhantes a dup()) estão
reunidas dentro da primitiva fcntl(), que não será detalhada
aqui (veja o arquivo localizado em/usr/include/fcntl.h para
maiores informações).