Faça um novo arquivo uma vez por minuto usando “crontab”

Faça um novo arquivo uma vez por minuto usando “crontab”

Estou tentando fazer um arquivo crontabnovo .tara cada minuto, todos os dias úteis, usando o seguinte código:

*/1 * * * 1,2,3,4,5 tar -cf /home/user/Archiv/$(date +"%Y%m%d%H%M").tar /home/user/Textverarbeitung/ -P

Isso não funciona. Por que?

Responder1

crontrata %como novas linhas. Você precisa usar escape, ou seja, usar \%para obter literal %como usado em date.

Então você precisa de:

date +"\%Y\%m\%d\%H\%M" 

Ou você pode usar um script e usar todos os comandos do script e chamar o script de crontab.

De man 5 crontab:

Os sinais de porcentagem (%) no comando, a menos que sejam escapados com barra invertida (\), serão alterados para caracteres de nova linha e todos os dados após o primeiro% serão enviados ao comando como entrada padrão. Não há como dividir uma única linha de comando em várias linhas, como o "\" final do shell.

Responder2

Use \%em vez de %- cron usa %como nova linha.

informação relacionada