Implementando um shell Unix em C: Logging [closed]

4

Atualmente, estou trabalhando na implementação do meu próprio shell UNIX em C. A base do shell está funcionando, você pode encontrar o código-fonte aqui .

Agora, minha próxima tarefa é implementar um recurso de logging para o shell. Então aqui está a minha pergunta:

Quais são as melhores práticas do UNIX / Linux para fazer isso? A maneira mais simples seria abrir um arquivo e escrevê-lo todas as vezes. Mas eu queria saber se há uma função que cuida disso para mim, ajudando-me a produzir ... "mais limpo" ... código.

Agradeço antecipadamente por sua ajuda, sou bastante novo em programação, mas quero fazer as coisas da maneira certa.

PS: Se você tiver alguma observação geral sobre o resto do código, eles serão muito apreciados: -)

    
por rahmu 23.01.2011 / 14:49

2 respostas

4

Normalmente, o histórico de comandos é salvo em um arquivo oculto no diretório pessoal do usuário. Além disso, você pode logar para stderr ou syslog .

    
por 23.01.2011 / 16:13
1

A prática comum para o registro é usar o syslog. É bem simples e não requer muito código. Se você precisar de algo mais - veja as bibliotecas de registro como liblogging ou log4c

    
por 23.01.2011 / 16:12