码迷,mamicode.com
首页 > 其他好文 > 详细

导hive表项目总结(未完待续)

时间:2015-10-20 19:12:14      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

shell里面对日期的操作

#!/bin/bash
THIS_FROM=$(date +%Y%m%d -d "-7 day")
THIS_TO=$(date +%Y-%m-%d -d "-1 day")
LAST_FROM=$(date +%Y-%m-%d -d "$THIS_FROM -1 year")
LAST_TO=$(date +%Y-%m-%d -d "$THIS_TO -1 year")

echo $THIS_FROM
echo $THIS_TO
echo $LAST_FROM
echo $LAST_TO

for((i=0; i<5; i++))
do
exp="-"$i" day"
DATE=$(date +%Y%m%d -d "${exp}")
MYDATE[i]=$DATE
done

for((i=0 ; i<5; i++))
do
echo ${MYDATE[i]}
done

 

 

 

python 日期的一些问题

#!/usr/bin/python
import datetime
import time

def formatdate_day(d, i):
   return (datetime.datetime.strptime(d, %Y%m%d)
            + datetime.timedelta(days=i)).strftime(%Y%m%d)

DATE=time.strftime(%Y%m%d,time.localtime(time.time()))
print formatdate_day(DATE, 1)

 

python里面用shell的代码

#!/usr/bin/python
import os
os.system(date +%Y%m%d -d "-1 year -8 day")

 

python 执行shell命令

#!/usr/bin/python
import os
import commands
os.system(ls)

os.system(cat ./config.js)
print "--------------------------------------------"

output = os.popen(cat ./config.js)
print output.read()
print "--------------------------------------------"


(status, output) = commands.getstatusoutput(cat ./config.js)
print status, output
print "--------------------------------------------"

res = commands.getstatusoutput(cat ./config.js)
print res

 

 

python里使用shell

#!/usr/bin/python
# -*- encoding: utf-8 -*-
import os
import commands
from subprocess import call

# os 模块的system方法
# system方法会创建子进程运行外部程序,方法只返回程序的运行结果。这个方法比较适用于外部程序没有输出结果的情况
os.system("echo \"Hello World\"")
print "----------------------------------------"

val = os.system("ls -al | grep \"log\" ")
print val
print "----------------------------------------"


val2 = os.system("ls -al | grep \"log1\"")
print val2
print "----------------------------------------"


#os 模块的popen方法
# 当需要得到外部程序的输出结果时(system只是执行了没有保存输出结果),本方法非常有用
# 它返回了一个类文件对象,调用该对象的read()或readline()方法可以读取输出内容
# os.popen(cmd) 要得到命令的输出内容,只需要再调用下read()或readline()


val3 = os.popen("ls -al")

val4=val3.read()

if "log" in val4:
    print "log exists"
else:
    print "log not exists"


print "-----------------------------------------"


#commands 模块
# 使用commands模块的getoutput方法,这种方法同popen的区别在与popen返回的是一个类文件对象,而本方法将外部程序的输出结果当作字符串返回,很多情况用起来更方便
# 主要方法  commands.getstatusoutput(cmd)  返回(status, output)   直接print转义字符不转化..
#   commands.getoutput(cmd) 只返回输出结果

(status, output) = commands.getstatusoutput(ls)
print output
print commands.getoutput(ls)
print "-----------------------------------------"

# subprocess模块
# 根据Python官方文档说明,subprocess模块用于取代上面的模块,与system相比更灵活
# 可以得到标准输出,标准错误,“真正”的状态代码,更好地错误处理等
print call(["ls","-al"])

 

日报内容:

1 依赖,数据缺失,等

导hive表项目总结(未完待续)

标签:

原文地址:http://www.cnblogs.com/balfish/p/4895612.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!