[英]Using head and tail in UNIX to extract specific transaction
我有一个关于在UNIX中使用head
和tail
命令从大量事务日志中截断特定事务的问题。
head -X <<<filename>>> | tail -Y > <<<Truncatedfile>>>
其中X
是我想要从文件开头开始的行数, Y
是我想要从文件底部开始的行数。
如何修改此代码,使截断的文件仅包含具有唯一事务ID的事务? 例如:-该文件包含一个序列中n
个交易ID的交易日志。 因此,如果我只需要提取一个事务ID的日志,该如何修改上面的代码?
您不会修改上面的代码,而是
grep -w transactionid filename
假定transactionid显示为单独的单词(-w)
编辑您可以包括一些上下文行(匹配后包括10行:)
grep -w -A 10 transactionid filename
或者,
grep -vw transactionid filename
简单隐藏所有不包含交易ID的行。 这几乎等同于执行sed -e '/transactionid/!d'
。
打印第5-12行
sed -n '5,12p' filename
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.