zoukankan      html  css  js  c++  java
  • shell 日期格式化 date

      

    do_date=`date`    ==> Thu Jun  3 14:33:58 CST 2020
    do_date=`date  +%F`    ==> 2020-06-03
    do_date=`date -d "-1 day" +%F`    ==>2020-06-02

    date +"%Y-%m-%d %H:%M:%S" 2020-06-03 14:20:25

    eg:

    1)在hadoop001的/home/hadoop/bin目录下创建脚本
    [hadoop@hadoop001 bin]$ vim ods_log.sh
        在脚本中编写如下内容
    #!/bin/bash
    
    # 定义变量方便修改
    APP=gmall
    hive=/soft/install/hive/bin/hive
    
    # 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
    if [ -n "$1" ] ;then
       do_date=$1
    else 
       do_date=`date -d "-1 day" +%F`
    fi 
    
    echo "===日志日期为 $do_date==="
    sql="
    load data inpath '/origin_data/gmall/log/topic_start/$do_date' into table "$APP".ods_start_log partition(dt='$do_date');
    
    load data inpath '/origin_data/gmall/log/topic_event/$do_date' into table "$APP".ods_event_log partition(dt='$do_date');
    "
    
    $hive -e "$sql"
    说明1:
    [ -n 变量值 ] 判断变量的值,是否为空
    -- 变量的值,非空,返回true
    -- 变量的值,为空,返回false
    说明2:
    查看date命令的使用,[hadoop@hadoop001 ~]$ date --help
    2)增加脚本执行权限
    [hadoop@hadoop001 bin]$ chmod 777 ods_log.sh
    3)脚本使用
    [hadoop@hadoop001 module]$ ods_log.sh 2019-02-11
    
  • 相关阅读:
    treeview 的动态的绑定
    数据库组件
    webconfig,form验证存角色
    treeView
    web.config 的读写与配置
    .net 开发精华
    asp.net
    在ASP.NET中实现AJAX
    验证js
    用js将form表单同时提交到两个不同页面的方法
  • 原文地址:https://www.cnblogs.com/lshan/p/13043376.html
Copyright © 2011-2022 走看看