I'm sure this is an easy one for the Gurus. I'm working on my get things done and todo system. At the moment I've simply got a markdown file which I edit in VI and set tags against my things to do.
It looks like this
# My project | @home
- Do this this | @home
I think sync this file across my devices and use tasker / grep on android to show me the todo based on where I am.
I've now got to the stage where I want to add things to do in the future so I was thinking of something like
- Do this thing in the future | @home @2014-02-01
How could I exclude that line until the date is 2014-02-01? My current command for just extract @home todos is
grep -e "@home" myfile | cut -d '|' -f1
I'm convinced there's a way of doing this, but google / stackoverflow hasn't lead me the right direction yet!
Help appreciated,
Thanks
Alan
Using Perl
Also, GNU awk
For files that use dates in a format where the chronological order is the same as the lexical order, like
nginx error log
you can find the lines after a certain date using awk:The error log might contain multiline errors that do not start with a date, so those are filtered out.
Using awk: