【发布时间】:2016-04-26 16:21:32
【问题描述】:
我有一个示例文件,如下所示:
5 6 7 8
55 66 77 88
A B C D
1 2 3 4
2 4 6 8
3 8 12 16
E F G H
11 22 33 44
and so on...
我想在 bash 脚本或仅在 bash 终端中输入命令,以独立于其他列提取其中一列。例如,我想使用 pattern=C 执行类似 grep/awk 命令并获得以下输出:
C
3
6
12
如何独立于其他列提取特定列,并在模式之后放置 # 行来提取,这样我的输出中就不会得到上面带有 7 或 G 列的列?
【问题讨论】:
-
我试过 'grep -A 3 "C" filename',它在模式之后给出了所需的行,但它给出了所有的列。
-
您应该发布相关数据的子集,而不是
some stuff ....,因为这会改变答案的动态。另外,当您考虑这样做时,我建议您先通过answer 自己尝试一下。 -
糟糕,您忘记发布代码了! StackOverflow 旨在帮助人们修复他们的代码。这不是免费的编码服务。任何代码都比没有代码好。元代码甚至可以展示您认为程序应该如何工作,即使您不知道如何编写它。
-
我已经进行了更改。我已经看到了您链接到的答案。我用这些工具玩了一段时间,但无法让列部分工作。这就是为什么我认为“awk”命令可以工作但找不到如何指定列的原因。感谢您的评论和帮助。
-
@ghoti 感谢您告诉我。