Sponsored Content
Operating Systems Linux Red Hat Need Script to ZIP/SAVE & then DELETE Log file & DELETE ZIPS older than 12 months Post 302742627 by Corona688 on Tuesday 11th of December 2012 10:57:54 AM
Old 12-11-2012
If you're only putting one file in each zip, there's no point using old-fashioned pkware pkzip, you might as well use a stream compressor like gzip. gzip will also delete the file by itself if it succeeds (and not if it fails).

You don't need to use $?, you can put the command directly into the if-statement.

I'm also not convinced your || && chain does precisely what you want, I'd make it an if.

This should match any log files ending in a dot then a few numbers, and avoid already-compressed logs.

Code:
#!/bin/bash
cd /usr/iplanet/servers/https-company/logs
# keep today's log files as text
find . -name '*.[0-9]*' '!' -name '*.gz' -mtime +1 -type f |
while read fname
do
    if ! gzip "$fname"
    then
        echo "fatal error compressing log $fname" | /bin/mail -s 'Log Error' zachs@domain.com
        exit 1
   fi
done

# delete old zip files after one year
find . -type f -name '*.gz' -mtime +365 | 
while read fname 
do
        if ! rm $fname
        then
                echo "fatal error $fname" | /bin/mail -s 'Log Error' zachs@domain.com
                exit 1
        fi
done
# good exit
echo "log maintenance completed" | /bin/mail -s 'Logs ok' zachs@domain.com
exit 0

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Overwrite & Delete in Text File

Dear All, I have text file like this: Header Record 1 Record 2 ....... Record n Tail This line of code : awk '{ if ( NR == 1 ) { head=substr($0,1,300);} else { last = substr($0,1,300);}END{printf "Header is : %-300s Trailer is : %-300s\n", head, last}' filename converted Header... (11 Replies)
Discussion started by: 33junaid
11 Replies

2. UNIX for Advanced & Expert Users

how to archive logs older than 5 days & then delete them?

My code is tar -cvf logs.tar `find /usr/openv/logs/512*.log -mtime +2` && find *.log* -mtime +2 -exec rm {} \; this gives me output as: tar: Missing filenames:confused: (1 Reply)
Discussion started by: timus1980
1 Replies

3. Shell Programming and Scripting

Delete files older than 3 months.(read date from the name of the file)

Guys, My log files stored in the date format format below(log_20080714072942): TIMESTAMP=`date +%Y%m%d%H%M%S` LOG=/log/log_${TIMESTAMP}.log I'm looking for a shell script which deletes all files which is older than 3 months from today. Regards, Bhagat (3 Replies)
Discussion started by: bhagat.singh-j
3 Replies

4. Shell Programming and Scripting

Shell script delete log files from folder & subfolders on space usage

Hi, I am trying to write a shell script to delete logs generate by db when space in the folder reaches 70%. i am getting space values from db, find the files at OS and remove them by using a cron job runs every 5minutes. I have to keep the latest 5 files at any time, my problem is that log files... (3 Replies)
Discussion started by: saha
3 Replies

5. Shell Programming and Scripting

help with tar & zip only last months(say,Sep) files

Need to 1. archive all the files in a directory from the previous month into a tar/gz file, ignoring all already archived 'tar.gz' files 2. Check created .tar.gz file isnt corrupted and has all the required files in it. and then remove the original files. I am using a function to get the... (1 Reply)
Discussion started by: Prev
1 Replies

6. Shell Programming and Scripting

[Solved] Get files & delete them by shell script

I want to use my script to get any file then delete it once it transfers to my side , I manage to create below script to generate "list" file which contains all file names in "10.10.1.1" then I made "a.out" file which contains the commands that I want to run it on "10.10.1.1" to get & delete the... (2 Replies)
Discussion started by: arm
2 Replies

7. Shell Programming and Scripting

Script needed to delete to the list of files in a directory based on last created & delete them

Hi My directory structure is as below. dir1, dir2, dir3 I have the list of files to be deleted in the below path as below. /staging/retain_for_2years/Cleanup/log $ ls -lrt total 0 drwxr-xr-x 2 nobody nobody 256 Mar 01 16:15 01-MAR-2015_SPDBS2 drwxr-xr-x 2 root ... (2 Replies)
Discussion started by: prasadn
2 Replies

8. Shell Programming and Scripting

Need Script to ZIP/SAVE & then DELETE Log file & send a mail conformation for any error

ENVIROMENT Linux: RHEL 6.4 Log Path: /usr/iplanet/servers/https-company/logs Log Format: user.log.03-15-2015 I have log4j log rotation enabled rotating files on a daily basis. The rotated logs are NOT compressed & are taking up too much space. I need a script that will run daily that... (1 Reply)
Discussion started by: admin_job_admin
1 Replies

9. UNIX for Dummies Questions & Answers

Log file - Delete duplicate line & keep last date

Hello All ! I need your help on this case, I have a csv file with this: ITEM105;ARI FSR;2016-02-01 08:02;243 ITEM101;ARI FSR;2016-02-01 06:02;240 ITEM032;RNO TLE;2016-02-01 11:03;320 ITEM032;RNO TLE;2016-02-02 05:43;320 ITEM032;RNO TLE;2016-02-01 02:03;320 ITEM032;RNO... (2 Replies)
Discussion started by: vadim-bzh
2 Replies

10. Shell Programming and Scripting

SFTP Shell Script Get & Delete && Upload & Delete

Hi All, Do you have any sample script, - auto get file from SFTP remote server and delete file in remove server after downloaded. - only download specify filename - auto upload file from local to SFTP remote server and delete local folder file after uploaded - only upload specify filename ... (3 Replies)
Discussion started by: weesiong
3 Replies
bart_manifest(4)						   File Formats 						  bart_manifest(4)

NAME
bart_manifest - system audit manifest file DESCRIPTION
The bart(1M) command generates a manifest that describes the contents of a managed host. A manifest consists of a header and entries. Each entry represents a single file. Entries are sorted in ascending order by file name. Any nonstandard file names, such as those that contain embedded newline or tab characters, have the special characters quoted prior to being sorted. See Quoting Syntax. Lines that begin with ! supply metadata about the manifest. The manifest version line indicates the manifest specification version. The date line shows the date on which the manifest was created, in date(1) form. Some lines are ignored by the manifest comparison tool. Ignored lines include blank lines, lines that consist only of white space, and com- ments that begin with #. In addition to metadata lines, the header contains the format comment block. This comment block lists the attributes reported for each file type. To see the format of a manifest file, see EXAMPLES. Manifest File Entries Each manifest file entry is a single line of one of the following forms, depending on the file type: fname D size mode acl dirmtime uid gid fname P size mode acl mtime uid gid fname S size mode acl mtime uid gid fname F size mode acl mtime uid gid contents fname L size mode acl lnmtime uid gid dest fname B size mode acl mtime uid gid devnode fname C size mode acl mtime uid gid devnode The fields of the manifest file entries are described as follows: fname Name of the file. To prevent parsing problems that are caused by special characters embedded in file names, file names are encoded as described in Quoting Syntax. type Type of file. Possible values for type are as follows: B Block device node C Character device node D Directory F File L Symbolic link P Pipe S Socket size File size in bytes. mode Octal number that represents the permissions of the file. acl ACL attributes for the file. For a file with ACL attributes, this field contains the output from aclto- text(). uid Numerical user ID of the owner of this entry. gid Numerical group ID of the owner of this entry. dirmtime Modification time in seconds since 00:00:00 UTC, January 1, 1970 for directories. lnmtime Creation time for links. mtime Modification time in seconds since 00:00:00 UTC, January 1, 1970 for files. contents Checksum value of the file. This attribute is only specified for regular files. If you turn off context checking or if checksums cannot be computed, the value of this field is -. dest Destination of a symbolic link. devnode Value of the device node. This attribute is for character device files and block device files only. Quoting Syntax The rules file supports a quoting syntax for representing nonstandard file names. When generating a manifest for file names that embeded <TAB>, <SPACE>, or <NEWLINE> characters, the special characters are encoded in their octal forms. +-----------------------------+-----------------------------+ |Input Character |Quoted Character | +-----------------------------+-----------------------------+ |<SPACE> |<SPACE> | +-----------------------------+-----------------------------+ |<TAB> |<TAB> | +-----------------------------+-----------------------------+ |<NEWLINE> |<NEWLINE> | +-----------------------------+-----------------------------+ |? |? | +-----------------------------+-----------------------------+ |[ |[ | +-----------------------------+-----------------------------+ |* |* | +-----------------------------+-----------------------------+ EXAMPLES
Example 1: Sample Manifest File The following is a sample system manifest file. The file entries are sorted by the encoded versions of the file names to correctly handle special characters. ! Version 1.0 ! Mon Feb 11 10:55:30 2002 # Format: # fname D size mode acl dirmtime uid gid # fname P size mode acl mtime uid gid # fname S size mode acl mtime uid gid # fname F size mode acl mtime uid gid contents # fname L size mode acl lnmtime uid gid dest # fname B size mode acl mtime uid gid devnode # fname C size mode acl mtime uid gid devnode /etc D 3584 40755 user::rwx,group::r-x,mask::r-x,other::r-x, 3c6803d7 0 3 /etc/.login F 524 100644 user::rw-,group::r--,mask::r--,other::r--, 3c165878 0 3 27b53d5c3e844af3306f1f12b330b318 /etc/.pwd.lock F 0 100600 user::rw-,group::---,mask::---,other::---, 3c166121 0 0 d41d8cd98f00b204e9800998ecf8427e /etc/.syslog_door L 20 120777 user::rw-,group::r--,mask::rwx,other::r--, 3c6803d5 0 0 /var/run/syslog_door /etc/autopush L 16 120777 user::r-x,group::r-x,mask::r-x,other::r-x, 3c165863 0 0 ../sbin/autopush /etc/cron.d/FIFO P 0 10600 user::rw-,group::---,mask::---,other::---, 3c6803d5 0 0 SEE ALSO
date(1), bart(1M), bart_rules(4), attributes(5) SunOS 5.10 9 Sep 2003 bart_manifest(4)
All times are GMT -4. The time now is 06:20 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy