2017-12-14 4 views
0

HDFSパーティションで古いファイル(たとえば2時間以上)を探したい。 「-mmin」は認識されませんが、別のアイデアをお持ちですか?HDFSフォルダ内の古いファイルを検索する

マイコード:

hdfs dfs -find /user/TEST/REP -name "*.log.*" -mmin +120 

戻る:見つける:予期しない引数:

答えて

0

-mmin私は解決策を見つけた:

差は数分です。

now=$(date +%s) 
# Loop in ls result (remove first line like "Found 6 items") 
hdfs dfs -ls $PATH_TO_CHECK | grep -v "Found" | while read f; do 
    file_date=$(echo $f | awk '{print $6}') 
    file_time=$(echo $f | awk '{print $7}') 

    difference=$((($now - $(date -d "$file_date $file_time" +%s))/(60))) 

    if [[ "$difference" -gt "$MAX_DURATION" ]]; then 
    echo "KO" 
    else 
    echo "OK" 
    fi 
関連する問題