Предскажите имя файла прежде, чем загрузить с URL в сценарии оболочки

Шаблон, не упомянутый все же:

find . -name "<filename>" | xargs grep "<>"

Как в

find . -name Makefile | xargs grep -v "target"

найти во всех Ваших Make-файлах, который пропускает конкретную цель.

2
17.09.2012, 21:56
1 ответ

Wget может сохранить http://myserver.org/index.php?file_id=foo в сервер обеспечил имя файла, например. foo.ext. Обычно это требует wget опции --content-disposition. Если Вы хотите загрузить на -O foo.ext.part необходимо узнать об этом сначала. Это может быть сделано путем загрузки http заголовка сначала, он будет содержать имя файла.

С wget можно получить соответствующую строку заголовка с командой как этот:

wget --spider --server-response URL 2>&1 | grep -i content-disposition

Вам нужен некоторый тривиальный парсинг на заголовке для извлечения имени файла. Это является дополнительным, конечно. Если не представляют Вас, не повезли, и wget составит имя файла на основе index.php. Может точно также использовать это для -O затем.

1
27.01.2020, 22:23

Теги

Похожие вопросы