A maioria dos sistemas de arquivos não suporta a inserção de dados no início de um arquivo, e o Unix não possui uma API para isso. Na maioria dos sistemas operacionais, as únicas maneiras de modificar um arquivo são substituir um segmento (por exemplo, alterar aaaaaaaaaa
para aaabbbaaaa
), anexar dados no final (por exemplo, alterar aaaaaaaaaa
para aaaaaaaaaacccc
) ou truncar o arquivo (por exemplo, altere aaaaaaaaaa
para aaaaa
).
Se você quiser adicionar dados no início de um arquivo, crie um novo arquivo com os dados adicionais e copie o conteúdo do arquivo antigo depois disso.
Isso é verdadeiro tanto para o Unix original quanto para a maioria, senão para todos os modernos (e, mais geralmente, para a maioria dos sistemas operacionais).