我有一个2.2 GB的.log文件,我想从中提取两个单词之间的特定文本行,然后在Mac上使用带正则表达式的Terminal将其保存到另一个文件中。该行在文件中出现很多次,每次都有不同的时间戳。但是我无法弄清楚到底要执行什么命令。我想提取出现在“时间戳”和“&随机”之间的每个字符串。下面是一个字符串示例:
时间戳记:02 / Mar / 2018:11:46:09 +0100 | Request:GET /track/video.mp4%20play/?id=10988&random
我尝试了以下方法:
grep -Po 'Timestamp \K.*(?= random)' video.log > outfile.txt
和:
sed -n '/Timestamp/,/random/p' video.log > outfile.txt
我也尝试了其他方法,但均无效果。
答案 0 :(得分:0)
您可以使用非贪婪匹配override.aes
进行匹配,直到this.props.onSuccess(data) && this.setState({ loading: false });
首次出现。对于时间戳记,.*?
应该是大写字母,而不是随机的空格,您应该使用与号本身。
我想您不想记录初始冒号,因此可以使用&random
您的命令可能类似于:
S