O dispositivo /dev/console não é especialmente relacionado ao aplicativo Console .
No Mac OS X 10.6, o aplicativo Console tem dois tipos de fontes de dados que ele lê: arquivos de log normais (por exemplo, os arquivos em /var/log/ ) e mensagens registradas através do ) facilidade de syslog.
Se você tiver um arquivo de registro que deseja monitorar, poderá usar o arquivo > Abrir… item de menu (⌘O) para exibir o arquivo no Console .
Nota: A única maneira de remover um arquivo da lista de arquivos do Console parece ser o uso do arquivo Arquivo > item de menu Mover para o Lixo (⌘⌫); Esteja preparado para retirar o arquivo da Lixeira se você quiser apenas pará-lo no Console .
Você pode usar o syslog programa de linha de comando para enviar mensagens para o recurso de syslog.
syslog -s Your message goes here. \(quote special chars for the shell'!)'
No entanto, na configuração padrão, essa mensagem nunca será exibida em nenhuma das exibições do Console porque o "nível" é muito baixo para ser importante. Esta filtragem inicial é devida por syslogd Ele é configurado pelo asl.conf e arquivos syslog.conf . A configuração padrão não armazena a maioria das mensagens se o nível for muito baixo (e syslog -s é o padrão para o nível mais baixo). O Console só pode mostrar mensagens armazenadas por syslogd .
Você pode alterar o valor do campo Nível usando a opção -l :
syslog -s -l notice This message should show up in \"All Messages\" \
with a Facility of syslog.
O nível notice é o nível mais baixo (padrão) para o qual syslogd armazena a maioria das mensagens.
Uma mensagem gerada como essa será exibida na pesquisa de banco de dados integrada "All Messsages" do Console
(o arquivo All Messages.aslquery in /Applications/Utilities/Console.app/Contents/Resources/ASLQueries/ tecnicamente limita a mensagem onde o campo Facility "contém" a string vazia, mas essa condição é trivialmente satisfeita por qualquer valor de Facility).
Se você quiser que sua mensagem apareça na pesquisa de banco de dados interna "Console Messages" do Console , você deve ser um pouco mais específico. Ele mostra apenas mensagens (armazenadas) que possuem um campo Facility que é igual a com.apple.console (consulte o arquivo Console Messages.aslquery in /Applications/Utilities/Console.app/Contents/Resources/ASLQueries/ ). Você pode gerar tais mensagens com syslog pela opção -k para definir o campo Recurso.
syslog -s -k Facility com.apple.console \
-k Level notice \
-k Message 'This will show up in "Console Messages"'
Ao usar -k , todas as opções e a própria mensagem devem ser especificadas com conjuntos de -k key value arguments (não podemos usar -l para definir o nível). Isso significa que temos que colocar a mensagem em um único argumento para que possa ser o valor do campo Mensagem.