繁体   English   中英

Oozie Shell动作

[英]Oozie Shell action

我有一个oozie shell动作,该动作从HDFS txt文件中获取输入,但是每次我调用txt文件时,它都说目录不存在,但它在服务器上存在。

这是我的shell脚本:

#!/bin/bash

Ingesta="MUM_APPs"
msj="'${1}'"
#alerta=`hdfs dfs -test -e  /user/inpt_red/oozie/workspace/envio_sms/EnviaSMS/Num_Alerta.txt`

while read line
 do
line=${i}
    Num=$(echo $line | cut -d '|' -f1)
    Proceso=$(echo $line | cut -d '|' -f5)

    if [ "$Proceso" == "*" ] || [ "$Proceso" == "$Ingesta" ]; then
        source /user/inpt_red/oozie/workspace/envio_sms/EnviaSMS/EnviaSMS.sh  ${Num} "'ALERTA!!  $Ingesta (`date +%d-%m-%Y` `date +%H:%M:%S`), $msj'"
    fi`enter code here`

done < <(hadoop fs -cat hdfs://mixsfwdebda01.telefonica.com/user/inpt_red/oozie/workspace/envio_sms/EnviaSMS/Num_Alerta.txt)

编辑1:

这是我得到的新错误:

 sh: line 17: syntax error near unexpected token `<' sh: line 17: `done < <(hadoop fs -cat hdfs://mixsfwdebda01.telefonica.com/user/inpt_red/oozie/workspace/envio_sms/EnviaSMS/Num_Alerta.txt)' Failing Oozie Launcher, Main class [org.apache.oozie.action.hadoop.ShellMain], exit code [1] log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.impl.MetricsSystemImpl). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. 

另外,您可以将脚本更改为:

hadoop fs -cat hdfs://mixsfwdebda01.telefonica.com/user/inpt_red/oozie/workspace/envio_sms/EnviaSMS/Num_Alerta.txt |\
while read line; do
    echo "${line}"
    #Some Stuff
    #some more stuff
done

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM