+ -
当前位置:首页 → 问答吧 → 求助一个awk问题

求助一个awk问题

时间:2011-12-12

来源:互联网

求教大牛们,一个问题:
日志格式:2011-12-12 10 100
我想取出:1(2011-12-12是星期几)
我用awk这样写:awk -F'\t' '{s=1;week="date -d \"s\" \"+%w\"";print $week;}' test
结果不对呀

作者: sail0755   发布时间: 2011-12-12

awk -F' ' '{a="date -d";b=$1;c="+%w";system(a" "b" "c)}' test
你要的是这样的???
awk语句中调用可以使用system()

作者: xiangliangyu2008   发布时间: 2011-12-12

引用 1 楼 xiangliangyu2008 的回复:

awk -F' ' '{a="date -d";b=$1;c="+%w";system(a" "b" "c)}' test
你要的是这样的???
awk语句中调用可以使用system()


我要是想打印出的列分别是:星期 日期格式的话,改怎么办呢?现在这个是只输出星期吧,然后再要输入日期就换行了

作者: sail0755   发布时间: 2011-12-12

哎 前几天看了下awk ,感觉还可以 但是看来还得好好学啊 顶......

作者: qwer_boo   发布时间: 2011-12-12

Python code

# cat test
2011-12-12 10 100
2011-12-13 10 100
# awk -F' ' '{print "date -d "$1" +%w" $1|"/bin/bash"}' test  
12011-12-12
22011-12-13


第一位就是星期,后面就是日期
Python code

# awk -F' ' '{print "date -d "$1" +%w" $1|"/bin/bash"}' test  |cut -c 1
1
2
# awk -F' ' '{print "date -d "$1" +%w" $1|"/bin/bash"}' test  |cut -c 2-11
2011-12-12
2011-12-13


这样可以切分

作者: xiangliangyu2008   发布时间: 2011-12-12