unix shell脚本

hc8w905p  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(337)

如何使用shell脚本获取所有文件夹的列表,目录在hdfs中。以下是我尝试过的:


# !/bin/ksh

echo "  loading folders..."
count=0
for folder in `hdfs dfs -ls -d /user/data/*`
do
if [ -d "$folder" ]
then
count=`expr $count + 1`
echo ${d}
fi
done
echo ${count}

程序结束时,count变量的值为0。

xmq68pz9

xmq68pz91#

您需要询问hdfs文件夹是否是一个目录,而不是bash。

if hdfs dfs -test -d "$folder"; then
cbeh67ev

cbeh67ev2#

如果!hdfs dfs-test-d$path在hdfs上;然后
echo“文件夹不存在。正在创建”
hdfs dfs-mkdir-d$path在hdfs上
其他的
回声“已经存在。删除并重新创建“
hdfs dfs-rmr-skiptrash$path在hdfs上
金融机构
如果文件夹不存在,上面的代码将创建该文件夹,如果存在,代码将删除该文件夹。
谢谢,
当做,
德拉吉·兰帕利。

相关问题