假设现在是(2016年7月7日星期二23:33:33),我想在2周内处理过去的数据。 这意味着我应该在下面的例子中开始打印数据(2016年7月3日星期二12:24:52)。
首先,我认为在下面的代码中,我可以用相关格式显示2周前的日期,如(2016年5月28日星期六21:18:09)。
OS> date --date="14 days ago" | awk '{$5="";print $0;}'
Thu Jun 23 22:49:47 2016
但是,我不知道如何打印日期比2周前更晚的文本。
你有什么想法吗?
-- [1] Sat May 28 21:18:09 2016
blah
-- [2] Mon Jun 20 22:52:50 2016
blah
-- [1] Mon Jul 3 12:24:52 2016
blah
blah
-- [99] Mon Jul 3 09:24:52 2016
blah
blah
--
--
-- [33] Thu Jul 7 20:24:52 2016
blah
blah
-- [1] Mon Jul 3 12:24:52 2016
blah
blah
-- [99] Mon Jul 3 09:24:52 2016
blah
blah
--
--
-- [33] Thu Jul 7 20:24:52 2016
blah
blah
答案 0 :(得分:1)
运行 awk -f script.awk文件
<强> script.awk 强>
BEGIN{
FS="]";
cmd="date -u +%s --date=\"14 days ago\""; #get Epoch time before 14 days
cmd|getline start #set the time in start variable
}
/--[[:space:]]/{ #check for line starting --
flag=0; # reset print flag
cmd="date +%s -ud\""$2"\""; #get its epoch time
cmd|getline check #set in variable check
}
check>start {flag++;check=0} #set print flag
flag
<强>输出强>
-- [1] Mon Jul 3 12:24:52 2016
blah
blah
-- [99] Mon Jul 3 09:24:52 2016
blah
blah
--
--
-- [33] Thu Jul 7 20:24:52 2016
blah
blah
答案 1 :(得分:1)
一种稍微不同的方法,如果Data在另一个名为Data的文件中,这里是一个使用awk的shell脚本。
let groupMemberRef = rootRef.child("groupMembers")
func userFilter(list: [String]) {
// list is a list of different users (strings) I'm looking through the groups to try to find
for user in list {
groupMemberRef.queryEqualToValue(true, childKey: user).observeSingleEventOfType(.ChildAdded, withBlock: { (snapshot) in
print(user)
print(snapshot)
print(snapshot.hasChild(user))
})
}