¿Cómo buscar una cadena dentro de muchos archivos .gz en la subcarpeta del depósito de Amazon S3? Traté de montarlo a través de s3fs y zgrep pero es muuuy lento. ¿Utilizas otros métodos?
¿Quizás hay algún servicio de Amazon que pueda usar para zgrep rápidamente?
Respuesta aceptada:
Creo que la forma más rápida es copiarlos localmente primero y luego hacer un zgrep local:
aws s3 cp s3://bucket/containing/the/logs . --recursive
Esto copiará (cp
) todos los registros a su directorio actual (.
) e incluir también todas las subcarpetas (--recursive
).
Luego un zgrep
local :
zgrep "search words" *.gz
O también para buscar recursivamente en subdirectorios:
find -name \*.gz -print0 | xargs -0 zgrep "STRING"
(Tomado de unix.stackexchange.com.)