在oozie中使用正则表达式检查文件名格式

qxsslcnc  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(347)

我想检查给定hdfs位置中是否存在具有特定名称的文件。我的文件名如下: TEST_20190930.csv 我在网上搜索了一下,发现 fs:exists 可以帮我们查一下。
我想签入我的coordinator oozie,看看文件是否存在( Test_20190930 )在哪里 20190903 是在hdfs上接收文件的日期。

5uzkadbs

5uzkadbs1#

您可以使用unix脚本检查文件模式,因为它提供了更多的灵活性和选项,并在oozie工作流中调用此脚本
工作流可以是这样的

<shell>
<exec> script.sh </exec>
</shell>
    <ok to="[NODE-NAME]"/>
    <error to="[NODE-NAME]"/>

而script.sh可以

if hdfs dfs -test -e $HDFS_PATH; then
    echo "[$HDFS_PATH] exists on HDFS"
    hdfs dfs -ls $HDFS_PATH
exit 0
    else
echo "File not Found"
exit 1
fi

相关问题