Pregunta

He escrito una secuencia de comandos para obtener el tamaño de mi almacenamiento S3, la secuencia de comandos funciona bien salvo el hecho de que sigue en bucle y nunca termina.Obtengo todas las salidas que necesito, pero las sigue pasando.

¿Alguna idea sobre por qué está en bucle?

#!/bin/sh
DAY=$(date +"%d%b%Y")
BUCKET='/home/user/Scripts/Holding/s3buckets.txt'
BLIST='/home/user/Scripts/Holding/blist.txt'
LOGDIR='/home/user/Scripts/Holding/'
USAGE=$BLIST
s3cmd ls > $BUCKET
awk '{print $3}' $BUCKET > $BLIST 
while read USAGE; do
s3cmd du -H $USAGE
done < $BUCKET > $LOGDIR/S3Usage$DAY.txt
¿Fue útil?

Solución

Cambie s3cmd du -H $USAGE a s3cmd du -H s3://$USAGE

Sin el s3://, s3cmd da por defecto la lista de todos los depósitos.Apuesto a que s3buckets.txt solo tiene los nombres de los depósitos, no el prefijo del protocolo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top