Какой лучший способ (или инструмент) в командной строке Windows (Vista) получить размер и время модификации файла на удаленном веб-сервере, не загружая его?





Есть Win32 порт wget, который прилично работает.
Invoke-WebRequest -Method Head PowerShell тоже подойдет.
В Linux я часто использую curl с параметром --head. Он доступен для нескольких операционных систем, включая Windows.
[править] в связи с ответом ниже, gknw.net в настоящее время не работает по состоянию на 23 февраля 2012 года. Обновленную информацию можно найти на curl.haxx.se.
1) Смотрите заголовки, которые возвращаются из запроса GET
wget --server-response -O /dev/null http://....
1a) Сохраните заголовки, которые возвращаются из запроса GET
wget --server-response -o headers -O /dev/null http://....
2) Посмотрите заголовки, которые возвращаются из запроса GET HEAD.
wget --server-response --spider http://....
2a) Сохраните заголовки, которые возвращаются из запроса GET HEAD.
wget --server-response --spider -o headers http://....
(а) В Windows нет /dev/null. (b) Я не уверен, почему вы включаете первые два параметра, поскольку они сказали, что хотят отправить запрос ГОЛОВА, а не ПОЛУЧИТЬ. Зачем загружать то, чем вы никогда не воспользуетесь, особенно если оно может быть большим.
Если вы не можете установить дополнительные приложения, вы можете telnet (вам нужно будет установить эту функцию для вашей Windows 7, выполнив это) удаленный сервер:
TELNET server_name 80
с последующим:
HEAD /virtual/directory/file.ext
или же
GET /virtual/directory/file.ext
в зависимости от того, хотите ли вы только заголовок (HEAD) или все содержимое (GET)
Это работает для https? Я пробовал порт 443 безрезультатно.
Спасибо! gknw.net/mirror/curl/win32/… имеет статически связанную версию для Win32, которая работает даже лучше, чем wget.