跟我一起学【Hdfs】之——运维篇 删除过期文件

查看数据步骤 :

按照时间倒序:
hdfs dfs -ls /tmp  | sort -k6,7 

查看非文件夹:
hdfs dfs -ls /tmp ls -l |grep -vn "^d"

查看文件夹:
hdfs dfs -ls /tmp ls -l |grep  "^d"

删除文件:
hadoop fs -rm -f /tmp/ffc341534d42473fbc9c817f4db7222f

删除文件夹:
hadoop fs -rm -r /tmp/xxxx

 删除过期数据脚本:

#!/bin/bash
#k认证
source /home/hadoopclient/bigdata_env
kinit -kt /home/hadoopclient/nhioc.keytab nhioc
#删除hdfs的tmp文件夹历史数据
old_version=$(hadoop fs -ls /tmp | awk 'BEGIN{ 
days_ago=strftime("%F", systime()-5*24*3600) }{ if($6<"days_ago"){printf "%s\n", $8} }')
arr=(${old_version// /})
echo $old_version
for version in ${arr[@]}
do
	hadoop fs -rm -f $version 
done

清空或删除日志文件:

#查找大于400M的文件  并清空文件
find / -type f -size +400M  -name ".out"  | xargs -I {} sh -c '> {}'
find / -type f -size +400M  -name "*.log" | xargs -I {} sh -c '> {}'

#查找大于400M的文件  并删除文件
find / -type f -size +400M  -name "*.log.*"  -exec rm -f {} \;
find / -type f -size +400M  -name "*.data"  -exec rm -f {} \;

 

你可能感兴趣的:(Hdfs)