【问题标题】:Decompressing a .lzo file using shell script [closed]使用 shell 脚本解压缩 .lzo 文件 [关闭]
【发布时间】:2013-06-06 13:41:59
【问题描述】:

好的,所以我在网上进行了相当多的搜索,但没有找到任何答案。我正在编写一个 shell 脚本,我需要在其中解压缩一个 .lzo 文件。看不到任何线索。有人有什么想法吗?我基本上是在阅读一个带时间戳的日志文件。我的脚本接受年、月、日作为参数。我能够找到我的文件,但现在当我必须解压缩它时,我不知道如何处理 .lzo 文件。需要帮助。

提前致谢。

【问题讨论】:

  • 您提到了时间戳、压缩文件和自定义脚本,但没有提到代码。请附上一些code,以便我们可以看到您实际上想要做什么。
  • 我使用的代码 `#!/bin/bash path="/home/vviswanathan/NEAT/" star="" dash="-" if [ $1 -gt 0 -a $2 -gt 0 -a $3 -gt 0 ] 然后 cd $path 如果找到 $path -name "*$1-$2-$3.lzo" 然后 echo $path$star$1$dash$2$dash$3$star lzop -d "neat*$1-$2-$3.lzo" echo "返回码是 $?" echo "文件存在" else echo "返回码是 $?" echo "文件不存在" fi else echo "无效输入" fi exit 0
  • 对不起格式
  • 只需编辑您的原始问题并正确格式化即可。否则它是不可读的。

标签: bash shell unix compression lzo


【解决方案1】:

从字面上看,我做了什么来解决这个问题:

$ apropos lzo
IO::Uncompress::AnyUncompress (3perl) - Uncompress gzip, zip, bzip2 or lzop file/buffer

好的,所以它可能与lzop有关

$ lzo
No command 'lzo' found, did you mean:
 Command 'lz' from package 'mtools' (main)
 Command 'lzop' from package 'lzop' (universe)
lzo: command not found

最后一个好像。

$ sudo apt-get install lzop
$ lzop 
[...]
Commands:
  -1     compress faster                   -9    compress better
  -d     decompress                        -x    extract (same as -dPp)

给大家一个巧克力!

【讨论】:

  • 这在 hadoop 系统上对我有用,但在 shell 脚本中却不行。我错过了什么吗?
  • 你做了什么,你得到了什么,你期望什么?
  • 基本上有一个 *.dat.lzo 文件。我一直在用lzop -d *dat..lzo解压文件,对得到的.dat文件进行操作。但现在我希望编写一个脚本来执行相同的操作,只需传递 yyyymmdd 并取回 .dat 文件
  • 对不起,伙计们。没有在本地安装 lzop。我猜是那些糟糕的日子之一。
【解决方案2】:

您是否尝试过将lzop 与-d 命令一起使用?

lzop -d file.lzo

参考:http://www.lzop.org/lzop_man.php

问候。

【讨论】:

  • 这在 hadoop 系统上对我有用,但在 shell 脚本中却不行。我错过了什么吗?
  • @Vikas 你遇到了什么错误?
  • 找不到 lzop 命令
  • @Vikas 尝试在您的终端执行which lzop 以获取lzop 的完整路径,然后将完整路径复制到您的脚本中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
  • 1970-01-01
  • 2014-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多