在单独的文件中记录所有出现的特定模式
Logging all occurences of a specifc pattern in separate files
我有一个包含以下数据的文件:
"ItemList":
"Resource" : "6"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2015-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "2"
"Resource" : "7"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2014-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "17"
是否可以在单独的文件中检索以 "Resource" 开始直到 "ResourcePosition" 的所有模式,例如 -
文件 1
"Resource" : "6"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2015-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "2"
文件 2
"Resource" : "7"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2014-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "17"
我尝试使用
cat FormattedJsonStructure | grep -m 1 -A 5 Resource
有了这个我得到了第一个模式。为了获得下一个模式,我尝试了
cat FormattedJsonStructure | grep -m 2 -A 5 Resource
但它给了我两个连续的模式。
split
命令可用于制作单独的文件:
grep FormattedJsonStructure --no-group-separator -A 4 -e "Resource" > AllResource
split -l 5 AllResource Resource
请注意,-A 4
alltogether 加上匹配的行表示 5 行。
我有一个包含以下数据的文件:
"ItemList":
"Resource" : "6"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2015-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "2"
"Resource" : "7"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2014-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "17"
是否可以在单独的文件中检索以 "Resource" 开始直到 "ResourcePosition" 的所有模式,例如 -
文件 1
"Resource" : "6"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2015-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "2"
文件 2
"Resource" : "7"
"ResourceIdentifier" : "12345"
"ResourceEventTime" : "2014-01-20T10:51:39Z"
"ResourceIdentifier" : "12345"
"ResourcePosition" : "17"
我尝试使用
cat FormattedJsonStructure | grep -m 1 -A 5 Resource
有了这个我得到了第一个模式。为了获得下一个模式,我尝试了
cat FormattedJsonStructure | grep -m 2 -A 5 Resource
但它给了我两个连续的模式。
split
命令可用于制作单独的文件:
grep FormattedJsonStructure --no-group-separator -A 4 -e "Resource" > AllResource
split -l 5 AllResource Resource
请注意,-A 4
alltogether 加上匹配的行表示 5 行。