Sponsored Content
Full Discussion: Perl script to rotate logs
Top Forums Shell Programming and Scripting Perl script to rotate logs Post 302176547 by ShawnMilo on Tuesday 18th of March 2008 01:14:09 PM
Old 03-18-2008
It seems like part of the problem is that the script isn't looking at the files at all. It's looping through strings which you intend to represent filename patterns, but it's never looking at the directory.

Hopefully this will get you started:


Code:
#!/usr/local/bin/perl

opendir(DIR, ".");

@files = grep { /^(twiz*.log*|nestl*|riesen*)/ } readdir(DIR);
closedir(DIR);

foreach $file  (@files){

    print "$file\n";

}

Also, I don't see where the "archive()" function you're calling has been declared. Maybe it's built into your environment. If not, maybe that's what's hanging up.

ShawnMilo
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script for Log Rotate

Hello, I only know the basic for shell programing. I need help for this, I thinks this is a basic for anyone who know a litle of shell scripting. I need creat a script for a rotatate logs, when a filesystem is full. I have a filesystem. The rotate consist in zip the current log (copy) and... (1 Reply)
Discussion started by: El Rengo
1 Replies

2. UNIX for Dummies Questions & Answers

Rotate logs every 1 hour

Hello All, I am learning unix and basically I want to rotate one of my application logs every 1 hour. I need to rotate that file every one hour. I looked in the forums and googled.. but couldn;t get proper information. Requesting you all to kindly guide me. Our application is running on... (4 Replies)
Discussion started by: arunpvp
4 Replies

3. Shell Programming and Scripting

Help with a rotate log script

Hi all, Am trying to write my own log rotate script. Curremtly, what I have is as below: #!/bin/ksh file_to_rotate=${1} x=${2} while ] do let curr=${x} let prev=${x}-1 if ] ; then #echo "cp -p ${file_to_rotate} ${file_to_rotate}.${curr}" cp -p... (7 Replies)
Discussion started by: newbie_01
7 Replies

4. Shell Programming and Scripting

Script to rotate file log

Hi Experts, I have script on crontab and give output quite large. I would like to know how to create rotate log when the size of log maximum 50MB if the test.log is 50MB then create test.0 Thanks Edy (2 Replies)
Discussion started by: edydsuranta
2 Replies

5. Shell Programming and Scripting

Perl script to parse multiple windows event logs.

Hi all, I am developing a log parsing agent in perl to send windows Event logs to Zenoss Monitoring tool. Using Win32::EventLog i can able to get the Event messages but only one Eventype eg Application or System could able to parse at a time. Can you please help to how to open mutiple eventlogs... (3 Replies)
Discussion started by: kar_333
3 Replies

6. Shell Programming and Scripting

Perl script to extract last 24 hrs logs from cronlog

Hi Friends, Can anybody help me to create a perl script to generate log file for last 24 hrs from cron log file ?? Thank You (2 Replies)
Discussion started by: syamji.vm
2 Replies

7. UNIX for Dummies Questions & Answers

Need script to rotate logs

I have few solaris-10 non global zones, where one application is writing some logs to /var/ovd/ConfigLogs. It keeps increasing all the time, as it is needed by application team as of now. I want a small script, which I can configure in cronjob, which should : - Run every Saturday 10 PM - Copy... (5 Replies)
Discussion started by: solaris_1977
5 Replies

8. UNIX for Dummies Questions & Answers

Logs do not rotate

My problem: Both access and error logs do not rotate any more and get really large. They are located here: /srv/www/+vHost name here+/logs/ Configuration seems to be here: /etc/logrotate.conf => looks OK, including "size 10M" to avoid large files (/etc/logrotate.d => is empty) manually... (4 Replies)
Discussion started by: floko
4 Replies

9. Shell Programming and Scripting

If I ran perl script again,old logs should move with today date and new logs should generate.

Appreciate help for the below issue. Im using below code.....I dont want to attach the logs when I ran the perl twice...I just want to take backup with today date and generate new logs...What I need to do for the below scirpt.............. 1)if logs exist it should move the logs with extention... (1 Reply)
Discussion started by: Sanjeev G
1 Replies
opendir(3C)						   Standard C Library Functions 					       opendir(3C)

NAME
opendir, fdopendir - open directory SYNOPSIS
#include <sys/types.h> #include <dirent.h> DIR *opendir(const char *dirname); DIR *fdopendir(int fildes); DESCRIPTION
The opendir() function opens a directory stream corresponding to the directory named by the dirname argument. The fdopendir() function opens a directory stream for the directory file descriptor fildes. The directory file descriptor should not be used or closed following a successful function call, as this might cause undefined results from future operations on the directory stream obtained from the call. Use closedir(3C) to close a directory stream. The directory stream is positioned at the first entry. If the type DIR is implemented using a file descriptor, applications will only be able to open up to a total of {OPEN_MAX} files and directories. A successful call to any of the exec functions will close any directory streams that are open in the calling process. See exec(2). RETURN VALUES
Upon successful completion, opendir() and fdopendir() return a pointer to an object of type DIR. Otherwise, a null pointer is returned and errno is set to indicate the error. ERRORS
The opendir() function will fail if: EACCES Search permission is denied for the component of the path prefix of dirname or read permission is denied for dirname. ELOOP Too many symbolic links were encountered in resolving path. ENAMETOOLONG The length of the dirname argument exceeds {PATH_MAX}, or a path name component is longer than {NAME_MAX} while {_POSIX_NO_TRUNC} is in effect. ENOENT A component of dirname does not name an existing directory or dirname is an empty string. ENOTDIR A component of dirname is not a directory. The fdopendir() function will fail if: ENOTDIR The file descriptor fildes does not reference a directory. The opendir() function may fail if: EMFILE There are {OPEN_MAX} file descriptors currently open in the calling process. ENAMETOOLONG Pathname resolution of a symbolic link produced an intermediate result whose length exceeds PATH_MAX. ENFILE Too many files are currently open on the system. USAGE
The opendir() and fdopendir() functions should be used in conjunction with readdir(3C), closedir(3C) and rewinddir(3C) to examine the con- tents of the directory (see the EXAMPLES section in readdir(3C)). This method is recommended for portability. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |opendir() is Standard; | | |fdopendir() is Evolving | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ SEE ALSO
lstat(2), symlink(2), closedir(3C), readdir(3C), rewinddir(3C), scandir(3C), attributes(5) SunOS 5.11 26 Jun 2007 opendir(3C)
All times are GMT -4. The time now is 08:07 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy