使用awk可以很方便地打印出正则表达式之间的内容。下面是一个示例代码:
awk '{
for (i=1; i<=NF; i++) { # 遍历每一列
if ($i ~ /正则表达式1/) { # 如果当前列匹配正则表达式1
for (j=i+1; j<=NF; j++) { # 从下一列开始查找
if ($j ~ /正则表达式2/) { # 如果找到匹配正则表达式2的列
for (k=i+1; k
在上面的代码中,我们使用了三层循环。外层循环遍历每一行,中间的循环遍历每一列,内层的循环用于查找匹配正则表达式2的列。
如果找到了匹配正则表达式1的列,并在后续的列中找到了匹配正则表达式2的列,那么就打印出正则表达式1和正则表达式2之间的列。内层循环使用print $k
语句打印出列的内容。
你可以将代码中的"正则表达式1"和"正则表达式2"替换为你实际要匹配的正则表达式,将"文件名"替换为你要处理的文件名。