bash
  • shell
  • s3cmd
  • 2011-12-06 9 views 0 likes 
    0

    私はS3ストレージのサイズを取得するためのスクリプトを書いていますが、スクリプトはうまくいきます。私は必要に応じてすべての出力を得るが、それらを通過し続ける。S3バッシュスクリプトのループ

    なぜそのループについてのアイディアですか?

    #!/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 
    
    +0

    's3cmd ls'出力の形式は何ですか? – jman

    +0

    '2011-01-28 15:24 s3:// bucket1 2010-12-24 10:51 s3:// bucket2' – Grimlockz

    +0

    あなたがそれを壊すときに、なぜあなたは' USAGE = $ BLIST'を持っていますか? '読んでいる間に... <$ BUCKET'? – blahdiblah

    答えて

    0

    変更s3cmd du -H $USAGEすべてのバケット用のリストを与えることにs3://、s3cmdデフォルトなし

    s3cmd du -H s3://$USAGEへ。私は、 s3buckets.txtにバケット名だけが入っていて、プロトコルプレフィックスではないことを賭けています。

    +0

    s3bucklist.txtはs3のリストで、blist.txtはそれらを正しいプレフィックスのリストに切り捨てるので、その理由がわからない場合 – Grimlockz

    +0

    ああ、意味があります。問題は、あなたが '$ BLIST'を準備するだけでなく、それを無視して' $ BUCKET'から読むことです。 – blahdiblah

    関連する問題