Estou criando um script Bash simples para extrair a data / hora da modificação do arquivo de um arquivo remoto via HTTP.
Arquivo de exemplo: http://example.com/bar/example.pdf
Isso pode ser feito sem o download do arquivo real? Se não, qual é a melhor alternativa?
HEAD
. No entanto, também esses sites fornecerão o resultado, porque eles devem fornecer tudo.--head
opção em vez de-X HEAD
ser mais concisa, para que o comando se torne: #curl -s -v --head http://foo.com/bar/baz.pdf 2>&1 | grep '^< Last-Modified:'
curl -svX HEAD
é ainda mais conciso ...A resposta do servidor geralmente possui um
Last-Modified
campo, você pode verificá-lo sem fazer o download do arquivo. Não há necessidade de usar-X HEAD
, há uma opção especial-I
para isso (-s
suprime a saída do progresso) :Também no meu caso não há curl instalado (estou fazendo um script para um dispositivo incorporado) , apenas
wget
. O caminho com o wget é:Os
--server-response
cabeçalhos de impressão e a--spider
opção obrigam a não fazer o download de páginas, mas a verificar sua existência.fonte
curl
é uma resposta melhor que a aceita. Talvez o uso,grep -i
já que muitas vezes o "modificado pela última vez", tenha um caso diferente.