$ touch aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBBB
$ crontab aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBBB
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: No such file or directory
Esse comportamento parece bastante incomum (observe como ele também trunca o caminho na mensagem de erro). Estou usando Debian bullseye 11.
Isso é um bug ou há uma razão específica pela qual o crontab tem uma limitação tão peculiar?
Não consigo replicá-lo na imagem do docker aqui: https://hub.docker.com/r/willfarrell/crontab
A versão do
crontab
from Cygwin imprime uma mensagem de erro explicativa:A mensagem aborda sua preocupação, embora sem fornecer uma explicação.
Infelizmente a versão no Debian não explica bem:
No entanto, o código-fonte (
apt-get source crontab
) fornece uma pista maciça emcron.h
:E depois em
crontab.c
:Caso não seja óbvio nesses snippets, há um limite de 99 caracteres codificado no comprimento do nome do arquivo. Não consigo ver uma razão para isso além de um arbitrário " isso deve ser longo o suficiente ". A abordagem adequada provavelmente teria sido usar
PATH_MAX
, mas o (s) autor (es) não fez isso.