forked from HPR/hpr-tools
		
	
		
			
				
	
	
		
			68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash -
 | |
| #===============================================================================
 | |
| #
 | |
| #         FILE: archive_metadata
 | |
| #
 | |
| #        USAGE: ./archive_metadata
 | |
| #
 | |
| #  DESCRIPTION: Adds metadata files (metadata_*.csv) to an archive for
 | |
| #               reference
 | |
| #
 | |
| #      OPTIONS: ---
 | |
| # REQUIREMENTS: ---
 | |
| #         BUGS: ---
 | |
| #        NOTES: ---
 | |
| #       AUTHOR: Dave Morriss (djm), Dave.Morriss@gmail.com
 | |
| #      VERSION: 0.0.1
 | |
| #      CREATED: 2015-06-14 12:57:04
 | |
| #     REVISION: 2015-06-14 12:59:48
 | |
| #
 | |
| #===============================================================================
 | |
| 
 | |
| set -o nounset                              # Treat unset variables as an error
 | |
| 
 | |
| SCRIPT=${0##*/}
 | |
| DIR=${0%/*}
 | |
| 
 | |
| #
 | |
| # Age threshold for archiving files
 | |
| #
 | |
| DAYS=120
 | |
| 
 | |
| #
 | |
| # Add the eligible file names to an array (to count them)
 | |
| #
 | |
| declare -a files=($(find . -name "metadata_*" -mtime +$DAYS -print))
 | |
| 
 | |
| if [[ ${#files[@]} > 0 ]]; then
 | |
|     #
 | |
|     # Uncompress the archive
 | |
|     #
 | |
|     echo "Uncompressing archive..."
 | |
|     bunzip2 meta.tar.bz2
 | |
| 
 | |
|     #
 | |
|     # Add a bunch of older metadata files
 | |
|     #
 | |
|     echo "Adding files to the archive..."
 | |
|     tar --verbose --append --file=meta.tar $(find . -name "metadata_*" -mtime +$DAYS)
 | |
| 
 | |
|     #
 | |
|     # Zip up the archive again
 | |
|     #
 | |
|     echo "Compressing the archive..."
 | |
|     bzip2 meta.tar
 | |
| 
 | |
|     #
 | |
|     # Delete all those old files
 | |
|     #
 | |
|     echo "Deleting archived files..."
 | |
|     find . -name "metadata_*" -mtime +$DAYS -print -exec rm -f {} \;
 | |
| else
 | |
|     echo "Nothing to archive"
 | |
| fi
 | |
| 
 | |
| exit
 | |
| 
 | |
| # vim: syntax=sh:ts=8:sw=4:et:tw=78:fo=tcrqn21
 |