我有一半的 C 课程,也许还有一两个我写的 shell 脚本作为经验。我正在尝试解析日程表中的数据,以便从终端将其上传到 Google 日历。我收到这样的文本块中的时间表:
2012 年 9 月 1 日星期六 00:00:00 GMT-0700 (PDT) 星期六 2:00PM 11:00PM
2012 年 9 月 2 日星期日 00:00:00 GMT-0700 (PDT) 星期日 00:00AM 00:00AM
2012 年 9 月 3 日星期一 00:00:00 GMT-0700 (PDT) 星期一上午 9:00 下午 6:00
2012 年 9 月 4 日星期二 00:00:00 GMT-0700 (PDT) 星期二上午 9:00 下午 6:00
2012 年 9 月 5 日星期三 00:00:00 GMT-0700 (PDT) 星期三 00:00 AM 00:00 AM
2012 年 9 月 6 日星期四 00:00:00 GMT-0700 (PDT) 星期四上午 8:00 下午 4:00
2012 年 9 月 7 日星期五 00:00:00 GMT-0700 (PDT) 星期五 10:00 AM 7:00 PM
我发现使用 googlecl 我可以在终端中输入:
$ google calendar 添加“Sep 3 Work 9 to 6”
我会得到一个日历事件,然后我可以自动同步到我的手机。
我已经阅读了一些关于 sed 和 awk 的文档,认为我可以使用它们来抓取每行的第 5 到第 10(即 9 月 1 日)字符以及轮班开始和结束的时间,添加“工作”标题,并将其直接通过管道传输到 googlecl。不过我还没弄下来。
我还尝试在 C 中研究文件 i/o,因为我可以将上面看到的日程表导出到文本文件,然后可能使用 C 将日程表以更简单的英语通过管道传输到 Google 日历。
sed 和 awk 是这样做的首选方式吗?(如果我能弄明白的话,我想只用常见的 *nix 命令是我的首选)我应该用 C 编写一个小程序来做到这一点吗?任何帮助(即使只是将我链接到您最喜欢的教程,以便我可以做更多阅读)将不胜感激,因为我发现谷歌搜索的许多页面都非常长而且有点超出我的头脑。谢谢。