我已经在我的Linux计算机上下载了以下文件:
wget https://github.com/tomwhite/hadoop-book/blob/master/input/ncdc/all/1901.gz
我试图使用gunzip 1901.gz解压缩文件,但是它没有工作。我使用“file”命令检查文件格式,它说:
1901.gz: HTML document, UTF-8 Unicode text, with very long lines
我对Linux非常陌生。我可以知道如何成功地提取数据以供使用吗?
我需要在我的程序中动态解压一个压缩文件。当我在我自己的linux计算机上尝试它时,它可以工作,但由于某种原因,每当我告诉学校计算机这样做时,它们都会失败。要解压,我使用以下命令:
zcat /file/address/file.tar.gz
并得到错误:
/file/address/file.tar.gz.Z: No such file or directory
我试图浏览文档,但找不到一个标志来关闭这种奇怪的行为。
任何帮助都将不胜感激。
谢谢
我有一个名为a.gz的文件,它是一个压缩文件,在解压缩时包含以下行:
a
b
下面是两个perl代码块,我认为它们“应该”给出相同的结果,但它们没有。
代码1:
use Data::Dumper;
my $s = {
status => 'ok',
msg => `zcat a.gz`
};
print Dumper($s),"\n";
代码2:
use Data::Dumper;
my $content = `zcat a.gz`;
my $s = {
status => 'ok
我正试图通过电子邮件发送一些压缩文件。文件的打包和发送工作正常,但是当我在windows机器上打开..gz文件时,归档文件包含每个文件的文件路径(在我的例子中是/tmp/feed)。在Linux上,文件路径不是在..gz文件中表示的。
下面是我打包文件的代码:
foreach my $input (glob($par{directory}.'*')) {
my $output = "$input.gz";
gzip $input => $output or die "GZIP failed: $GzipError
我正在开发一个脚本来处理和移走被放到某个文件夹中的压缩文件。
只要投到文件夹中的是一个压缩文件,脚本就能很好地工作。但是,如果脚本在没有压缩文件来处理bash函数${f%.gz}时执行,则会产生意想不到的结果。
下面是脚本,然后是一个问题案例示例:
FILES="$INGEST_DIR/*.gz"
for f in $FILES
do
JUSTFILENAME=${f##/*/}
syslog -s -l n "Archiving \"$JUSTFILENAME\""
UNZIPPEDPATH=${f%.gz}
好的,所以我有一个zip文件,其中包含gz文件(unix )。
我就是这么做的--
def parseSTS(file):
import zipfile, re, io, gzip
with zipfile.ZipFile(file, 'r') as zfile:
for name in zfile.namelist():
if re.search(r'\.gz$', name) != None:
zfiledata = zfile.open(name)
我想在我的bash脚本中的for循环中使用命令替换,如下所示:
for file in `ls`; do
echo "$file"
tar xzvf "$file"
done
问题是在提取每个文件时,在下一次迭代中,ls将再次执行,因此for循环将迭代新的集合。我决定在开始循环之前捕获ls输出,并在循环中使用它:
files=`ls`
for file in ${files}; do
echo "$file"
tar xzvf "$file"
done
但看起来并没有运行ls并将
显示的脚本在最后一条命令中运行失败。 当在终端中单独运行时,该命令运行良好。我试过了!..参数的一部分,移动它,使用各种括号和断行符,甚至使用完整路径。我对其他解决方案不感兴趣--我感兴趣的是为什么这个解决方案不能在特定的脚本中工作。 #!/bin/bash
mkdir alllogs
for i in $(locate *.log); do cp $i alllogs/; done
tar -zcvf alllogs/logs.gz alllogs/*
rm -v alllogs/!('logs.gz') 该脚本从Linux系统收集