私のスクリプトの一部では、クラウドイメージの例の最新バージョンをダウンロードする必要があります。
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)"