o que é símbolo e & in unix / Linux? [duplicado]

13

Eu tenho uma entrada CRONTAB como abaixo. Alguém pode me dizer o que a afirmação abaixo está exatamente fazendo?

1 0 * * * /vol01/sites/provisioning/MNMS/45627/45627.sh1 >> /vol01/sites/provisioning/MNMS/45627/output/cron.log 2>&1
    
por user3475 04.09.2013 / 11:57

2 respostas

20

> redireciona a saída para um arquivo, sobrescrevendo o arquivo.

>> redireciona a saída para um arquivo anexando a saída redirecionada no final.

A saída padrão é representada no bash com o número 1 e o erro padrão é representado com o número 2 . Eles são separados, para que o usuário possa redirecioná-los para arquivos diferentes.

2>&1 redireciona o erro padrão para a saída padrão para que eles apareçam juntos e possam ser redirecionados para um arquivo. (Escrever apenas 2>1 redirecionaria o erro padrão para um arquivo chamado "1", não para a saída padrão).

No seu caso, você tem um trabalho cuja saída (padrão e erro) é anexada no final de um arquivo de log ( cron.log ) para uso posterior.

Para informações adicionais, consulte o manual da bash (seção "Redirecionamento"), esta questão , e esta questão .

    
por 04.09.2013 / 16:39
7

Você deve pesquisar no Google com a palavra-chave bash redirection para obter informações detalhadas. Aqui está um bom artigo para referência.

Para sua pergunta, o crontab executará 45627.sh1 scripts em 00:01 todos os dias e anexará seu erro e saída ao arquivo cron.log .

    
por 04.09.2013 / 12:08