Script mínimo para converter todos os arquivos jpg/jpeg/png em um diretório para .avif.
Para lidar com nomes de arquivos contendo espaços, utiliza find -print0 e read -d ''.
#!/usr/bin/env bashset -euo pipefail
while IFS= read -r -d '' file; do avifenc "$file" -o "${file%.*}.avif" >/dev/null 2>&1done < <( find . -type f \( -name '*.jpg' -o -name '*.jpeg' -o -name '*.png' \) -print0)Observações
- Se já existir um
.avifcom o mesmo nome, ele será sobrescrito - Para ver o log de conversão, remova
>/dev/null 2>&1
hsb.horse