首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tar命令不会生成.tar.gz文件

tar命令不会生成.tar.gz文件
EN

Stack Overflow用户
提问于 2017-02-07 23:57:56
回答 1查看 349关注 0票数 0

我尝试在一个循环中迭代,每次迭代压缩几个目录,然后比较这两个目录的md5和。我注意到我的第一个tar语句生成的tar文件比目录的实际路径高一级。即语句:

代码语言:javascript
复制
tar -czvf ${folder_name}.tar.gz /tmp/psk1/hadoop_validation$ENV/${folder_name}

/tmp/psk1/而不是/tmp/psk1/hadoop_validation$ENV/中生成${folder_name}.tar.gz

第二个tar语句:

代码语言:javascript
复制
tar -czvf ${folder_name}.tar.gz ${edge_base_dir}/wlossf$ENV/app/${folder_name}

根本不生成tar文件。我找不到它,甚至在实际路径之上的一层也找不到。

代码语言:javascript
复制
hdfs dfs -ls /haas/wlf/wlossf$ENV/app | while read rec; do
    echo $rec
    folder_path=`echo ${rec} | awk -F ' ' '{print $8}'`
    folder_name=`echo ${folder_path} | awk -F '/' '{print $6}'`

    if [ ! -z ${folder_name} ] && [ ! -z ${folder_path} ]; then

        hdfs dfs -get ${folder_path} /tmp/psk1/hadoop_validation$ENV/   

        if [ $? -eq 0 ]; then
            echo "Hadoop to local copy job Successful"
        else 
            echo "Hadoop to local copy job Failed"
        fi

        tar -czvf ${folder_name}.tar.gz /tmp/psk1/hadoop_validation$ENV/${folder_name}
        hadoop_md5=$(md5sum /tmp/psk1/hadoop_validation$ENV/${folder_name}.tar.gz)

        tar -czvf ${folder_name}.tar.gz ${edge_base_dir}/wlossf$ENV/app/${folder_name}
        edge_md5=$(md5sum ${edge_base_dir}/wlossf$ENV/app/${folder_name}.tar.gz)

        if [ ${hadoop_md5} == ${edge_md5} ]; then
            echo "${folder_name} is good"
        else
            echo "${folder_name} is bad"
        fi  
    fi      
    echo ${folder_name}
    echo ${folder_path}
done

这里我漏掉了什么?任何帮助都将不胜感激。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-08 00:10:57

正如mouviciel在评论中所说,默认情况下,tar在当前工作目录中创建文件。

只需在tar.gz文件前面加上文件夹,它就会在您想要的位置创建它:

代码语言:javascript
复制
tar -czvf /tmp/psk1/hadoop_validation$ENV/${folder_name}.tar.gz /tmp/psk1/hadoop_validation$ENV/${folder_name}

请注意,当您将在归档的同一文件夹中创建tar时,您将在输出中收到一条file changed as we read it警告。没什么好担心的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42094367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档