【问题标题】:What command to search for ID in .bz2 file?在 .bz2 文件中搜索 ID 的命令是什么?
【发布时间】:2017-06-30 15:27:33
【问题描述】:

我是 Linux 新手,我正在尝试在 .bz2 文件中查找 ID 号。似乎是一个相当直接的要求,但是我在网上的任何地方都找不到正确的命令。我相信我需要使用 bzgrep。

我想在 Bulk9876.bz2 文件中查找“123456”

我将如何构建这个命令?

【问题讨论】:

  • 你试过bzgrep 123456 Bulk9876.bz2吗?
  • 是的,它不返回任何内容,但是如果我执行 bzgrep 9876 Bulk9876.bz2 (或文件名中的某些内容),那么它会返回:二进制文件(标准输入)匹配乙>。我不认为它实际上是在文件中搜索。
  • 看起来,您有一个非标准版本的bzgrep,或者您有一个别名/函数/脚本来掩盖真实的。 type bzgrep 告诉你什么?
  • "bzgrep 是 /usr/bin/bzgrep 的跟踪别名"

标签: linux command-line grep


【解决方案1】:

您可能只需要告诉 grep 可以将该数据解析为文本:

bzgrep -a 123456 Bulk9876.bz2

如果您尝试查看压缩数据(而不是解压缩并搜索解压缩数据),只需使用grep -a …

否则,验证所需的字符串是否存在于文件中可能是有意义的; bunzip2 和grep -a 解压后的文件。如果可行,则问题出在您的 bzgrep 实例中(这很奇怪,因为它应该使用与 bunzip2 相同的解压缩库)。

【讨论】:

  • 此命令没有返回任何内容,我无法获取文件来解压缩它。我的访问权限有限。
  • 您无法读取文件?我不跟。 ls -lh Bulk9876.bz2; id 的输出是什么?如果 bzgrep 命令根本没有给出任何输出,这意味着它成功扫描了文件并且未能找到给定的模式 (123456)。可以肯定的是,在该命令之后运行echo $?。我期待1 的响应,但数字越大意味着出现错误(0 表示匹配)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-24
  • 2017-10-28
  • 1970-01-01
  • 1970-01-01
  • 2021-09-03
  • 2011-04-25
相关资源
最近更新 更多