#!/bin/bash
#set -x
source ~/.bashrc
# HADOOP所在的bin目录
HADOOP_BIN_PATH=/opt/cloudera/parcels/CDH/bin
bin=`dirname "$0"`
bin=`cd "$bin"; pwd`
echo $bin
if [ $# -lt 1 ]
then
echo "Usage: ./delshell.sh MachineTag"
echo "Usage: ./delshell.sh MachineTag confFile"
exit
fi
tag=$1
if [ 'a'$2'a' == 'aa' ]
then
confFile="$bin"/ddds.conf
else
confFile=$
fi
#/tmp/datax-hdfspluswriter@3,d1,
if [ -f $confFile ]
then
for ddd in `cat $confFile|grep -v '^#'|grep ','$tag','|awk -F',' '{print $1}'`
do
echo "*******************$ddd***************************"
array=(${ddd//@/ })
d2=$(date -d "-${array[1]} days" +"%Y%m%d")
echo ${d2}
$HADOOP_BIN_PATH/hdfs dfs -ls "${array[0]}" |grep -E "^d" |awk '{gsub("-", "", $6)}; {print $6" "$8}'|awk -v a=$d2 '$1<a {print $2}' | xargs hdfs dfs -ls
done
else
echo "Error: Please assign config file or run delshell.sh command with ddds.conf in same directory"
fi
HDFS删除过期数据2
于 2025-02-07 17:07:11 首次发布