我有一个包含以下示例文本的文件。 (实际文字很大)。
2014/05/08-19:15:44.544824-<String1>
2014/05/08-19:21:54.544824-<String2>
2014/05/08-19:34:59.564461-<String3>
我必须提取两个时间戳之间的数据,例如 19:15:00 - 19:20:00 等等,直到 eof。我尝试过使用 sed 和 awk,但问题是在某些时候它们会给出所有内容。 (例如,他们会给出 19:15:00 --> EOF 期间的所有内容)。我使用的命令是
awk '/19:15:00/,/19:20:00/' InputFile
and
sed '/19:15:00/,/19:20:00/p' Inputfile.
关于如何在 perl 或 sed & awk 中执行此操作的任何想法,这实际上可能有效吗?错误的输出是否与时间戳的格式有关? (只是想)
附言。我正在使用以下代码来制作时间戳。 (是否有可能因为本地时间功能而发生这种情况?
$curr = timelocal(0, 0, 0, (split /\//, $ARGV[0])[1], (split /\//, $ARGV[0])[0]-1, (split /\//, $ARGV[0])[-1]);
$currentTime = strftime "%H:%M:%S", localtime($curr);