내 스크립트의 일부에서는 클라우드 이미지 예제의 최신 버전을 다운로드해야 합니다.
http://download.rockylinux.org/pub/rocky/8/images/
최신은 현재http://download.rockylinux.org/pub/rocky/8/images/Rocky-8-GenericCloud-8.4-20210620.0.x86_64.qcow2
이 링크에서 최신 파일을 사용 curl
하거나 다운로드하려면 어떻게 해야 합니까 ?wget
.qcow2
문제는
- 파일명이 계속 바뀌네요
- .qcow2 파일이 여러 개 있을 수 있습니다.
- 파일에는 GenericCloud가 포함되어야 합니다.
답변1
sort
다음과 같은 옵션이 있습니다 -V
.
-V, --version-sort natural sort of (version) numbers within text
따라서 다음 curl | grep | sort -V
과 같은 조합을 사용할 수 있습니다.
wget "http://download.rockylinux.org/pub/rocky/8/images/$(
curl http://download.rockylinux.org/pub/rocky/8/images/ \
| grep -Po 'href="\K[^"]*GenericCloud[^"]' \
| sort -V \
| tail -n1)"
또는 선택의 여지 grep
가 없는 경우 -P
:
wget "http://download.rockylinux.org/pub/rocky/8/images/$(
curl http://download.rockylinux.org/pub/rocky/8/images/ \
| grep -o 'href="[^"]*GenericCloud[^"]' | grep -o '[^"]*\.qcow2' \
| sort -V \
| tail -n1)"