[root@cdh01 bin]# vim d_o.sh
#!
/bin/bash
# 定義變數方便修改
ap=ll
# 如果是輸入的日期按照取輸入日期;如果沒輸入日期取當前時間的前一天if[
-n "$1"
];then
d_date=$1
else
d_date=
`date -d "-1 day" +%f`
fi sql="
set hive.exec.dynamic.partition.mode=nonstrict;
insert overwrite table "$ap"
.d_o partition
(dt)
select *
from
"$ap"
.o_fo
where dt=
'$d_date' and id is not null;"
hive -e "$sql"
執行上面的腳本報錯:
注:環境配置沒問題,可以執行其他指令碼
將 d_o.sh的 第15行設定非嚴格模式刪除(不動態分割槽,手動分割槽)(set hive.exec.dynamic.partition.mode=nonstrict;)修改為:
[root@cdh01 bin]# vim d_o.sh
#!
/bin/bash
# 定義變數方便修改
ap=ll
# 如果是輸入的日期按照取輸入日期;如果沒輸入日期取當前時間的前一天if[
-n "$1"
];then
d_date=$1
else
d_date=
`date -d "-1 day" +%f`
fi sql="
insert overwrite table "$ap"
.d_o partition
(dt=
'$d_date'
) select
id ,
total_amount ,
order_status ,
user_id ,
payment_way ,
out_trade_no ,
create_time ,
operate_time
from
"$ap"
.o_fo
where dt=
'$d_date' and id is not null;"
hive -e "$sql"
執行成功沒
踩坑錄 Redis執行Lua腳本報錯
redis環境執行lua指令碼因未能正確設定全域性變數 global variable 而丟擲錯誤,導致程式終止。在zerobrane studio工具中使用redis環境執行如下lua指令碼 下面指令碼的意圖是 分別在redis中設定鍵t1 t2的值為11 22 tb for k,v in pai...
儲存過程建立腳本報錯。
從 iclassfactory 為 clsid 為 的 com 元件建立例項失敗,原因是出現以下錯誤 c001f011。microsoft.sqlserver.manageddts 其他資訊 從 iclassfactory 為 clsid 為 的 com 元件建立例項失敗,原因是出現以下錯誤 c00...
執行shell腳本報錯,但控制台執行正常
問題 最近編寫shell指令碼,遇到直接執行shell指令碼怎麼也不成功,但是在控制台輸入命令就能執行成功,報錯如下圖所示 指令碼內容如下 指令碼實現功能很簡單,且語法也沒問題,但是執行指令碼就報錯,經過艱苦排查,發現問題在於filebeat kill.sh是我在windows下編輯然後上傳到lin...