Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unix 特定目录中Tar文件的脚本_Unix_Compression - Fatal编程技术网

Unix 特定目录中Tar文件的脚本

Unix 特定目录中Tar文件的脚本,unix,compression,Unix,Compression,我正在尝试编写一个Unix脚本,该脚本将转到特定目录(/tmp/Sanbox/logs)并tar.gz该目录中的所有日志文件,并删除超过2天的原始文件。到目前为止,我有这个,但它不工作。任何帮助都将不胜感激 #!/bin/bash AGE_TO_COMPRESS="172800" # 172800 seconds = 2 days LOG_FILES="export/home/H0166015/Sandbox/logs" # Any file older than EDGE_DATE mu

我正在尝试编写一个Unix脚本,该脚本将转到特定目录(/tmp/Sanbox/logs)并tar.gz该目录中的所有日志文件,并删除超过2天的原始文件。到目前为止,我有这个,但它不工作。任何帮助都将不胜感激

 #!/bin/bash

AGE_TO_COMPRESS="172800" # 172800 seconds = 2 days
LOG_FILES="export/home/H0166015/Sandbox/logs"

# Any file older than EDGE_DATE must be compressed
NOW=$( date +%s )
EDGE_DATE=$(( NOW - AGE_TO_COMPRESS ))

for file in $LOG_FILES ; do
    # check if file exists
    if [ -e "$file" ] ; then

        # compare "modified date" of file to EDGE_DATE
        if [ $( stat -c %Y "$file" ) -gt ${EDGE_DATE} ] ; then

            # create tar file of a single file
            tar -cvzf $file.tar.gz $file --remove-files
        fi
    fi
done

$LOG_FILES/*中的文件不应该是
;你能告诉我到底是什么不起作用吗?你有错误吗?脚本没有压缩文件或者没有删除旧文件?!