私のファイル/var/logs/*.log
では、サイズが1 GBを超えるすべてのファイルを圧縮するスクリプトを生成する必要があります/var/logs/*.zip
。たとえば、サイズが1024 MBを超えるaccess_log.log
場合です。access_log.zip
ベストアンサー1
これは機能することができます(実行中/var/log
):
find *.log -type f -size +1G |xargs -L1 -I file zip file.zip file
説明する
find *.log -type f -size +1G
1GBを超えるすべてのファイルを探すxargs -L1 -I file zip file.zip file
すべてのファイルを圧縮
xargs
マルチコアシステムを使用している場合(おそらくそうです)、引数を指定して4つのzipコマンドを並列に実行できます-P4
。
より多くのスペースを節約したい場合は、zip
この-9
オプションを提供してください。
また、Unixの世界ではgzip
、bzip2
およびxz
/がZipよりも一般的である点に注目する価値があります。lzip