# Determinar si el valor de esta clave JSON, hay valor devoluciones. No se devuelve NULL. # Pasados dos parámetros, $ 1 es el nombre de la clave, $ 2 es toda la línea de JSON. fun_col () { echo $ 2 > col1 COL = ` CAT col1 | grep $ . 1 | WC - l` SI [COL = $! 0 ]; el entonces valor =` CAT col1 | awk -F " $ {} 1 \.": " ' {2} print $ ' | awk -F ' ' ' {} $ 1 imprimir. ' ' eco " $ Valor " el otro valor = \\ N eco " $ valor " Fi # encima del eco de retorno tiene # $ valor de retorno } # corriendo por el archivo de almacenamiento vacío. > Test.txt date_yesterday = ` FECHA -d " 1 Día Hace miembros. " + " % Y-M-% D% " ` # coincide con el archivo de registro original finalmente consiguió JSON CAT date_yesterday e_charger_user_other_service} {$ .log |. Grep " Get información del usuario con éxito " > troncos _ $ {} date_yesterday gato registros | grep "getInfo], resultado " | awk -F ' "datos": ' ' {print $ 2} ' | awk -F ' , "info":" ' ' {print $ 1} ' > de datos _ $ {date_yesterday} .json mientras que la línea de lectura hacer idno = `fun_col idno $ line` idPicBack = ` fun_col idPicBack $ line` idPicFront = `fun_col idPicFront $ line` idtype = ` fun_col idtype $ line` isIdChecked = `fun_col isIdChecked $ line` isInternalEmployee =`fun_col isInternalEmployee $ line` isOrderCharge = ` fun_col isOrderCharge $ line` isPayPwdSet = `fun_col isPayPwdSet $ line` teléfono = ` fun_col teléfono $ line` RealName = `fun_col RealName $ line` regChannel = ` fun_col regChannel $ line` regTime = `fun_col regTime $ line` sexo = `fun_col sexo $ line` símbolo = ` fun_col símbolo $ line` uPDATETIME = `fun_col uPDATETIME $ line` ID de usuario = ` fun_col el usuario $ line` userState =fun_col userState $ line` ` userType = ` fun_col userType $ line` # \ 001 delimitador delimitador en función de su propio cambio. echo " $ {identificación}? $ {idPicBack}? $ {idPicFront}? $ {idtype}? $ {isIdChecked}? $ {isInternalEmployee}? $ {isOrderCharge}? $ {isPayPwdSet}? $ {Teléfono}? $ {nombre real }? $ regChannel} {?} $ {regTime? Sexo} $ {?} $ {ficha? uPDATETIME} $ {?} $ {ID de usuario? userState} $ {?} $ {userType " >> test.txt HECHO < la data_ .json date_yesterday} {$ #} y la eliminación del tipo de datos cadena final en ambos lados "" Sed -i ' S /} // ' test.txt Sed -i ' S / \ "// G ' test.txt Videos MusicalesLos datos _ $ {} date_yesterday test.txt .txt # Subir limpiar el archivo .txt en el directorio correspondiente de hdfs. FS Hadoop -poner datos f $ _ {} .txt /user/hive/inceptor/user/hive/warehouse/default.db/gwddc_admin/test_json/ date_yesterday