我正在拼命搜索如何在目录中找到所有非空的gzip文件,目标是从日期通过ssh检索所有日志并将它们rsync到本地目录,但我可以根据日期得到10k文件,其中很多都是空的,所以我想在制作rsync之前对它们进行排序。
我知道我可以找到所有这样的gz文件:
ssh toto "find /logexport/proxies*/logs/ -type f -name '*20170511*.gz'" > test.txt
但是我想对它们进行排序除去空的,如果它们不是我可以使用的gzip:
! -size 0
现在我将所有文件同步到一个文件夹中然后我按照这样排序:
for f in ${FOLDER}/*; do
if [[ $(gunzip -c $f | head -c1 | wc -c) == "0" ]]; then
rm -f $f
fi
done
你知道如何将最后一个命令合并到第一个命令中吗?
目标是通过ssh获取包含数据的所有gz文件的列表。
答案 0 :(得分:0)
如果gzip文件没有其他标头信息,例如文件名,那么所有空的gzip文件应该是20个字节长。