trunc.pl is a simple Perl script to truncate files, for example logs and other data files. Many Pikt scripts invoke trunc.pl. trunc.pl sources from the trunc_programs.cfg file.
#!/usr/bin/perl
# trunc.pl -- truncate a file
die "Usage: trunc.pl <#lines> <file>\n" unless $#ARGV == 1 ;
$LINES = $ARGV[0] ;
$FILE = $ARGV[1] ;
$BAK = "$FILE.bak.gz" ;
$TMP = "$FILE.tmp" ;
die "no $FILE file!\n" if (! -e $FILE) ;
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,
$mtime,$ctime,$blksize,$blocks) = stat($FILE) ;
unlink($BAK) ;
system("/usr/bin/gzip -c $FILE > $BAK") ;
chown($uid, $gid, $BAK) ;
chmod($mode, $BAK) ;
system("/usr/bin/tail -$LINES $FILE > $TMP") ;
chown($uid, $gid, $TMP) ;
chmod($mode, $TMP) ;
rename($TMP, $FILE) ;
[For more examples, see Samples.]
Home |
FAQ |
News |
Intro |
Samples |
Tutorial |
Reference |
Software |
Authors |
Licensing |
SiteSearch
Links |
SiteIndex |
Pikt-Users |
Pikt-Workers |
Contribute |
ContactUs |
Top of Page
Page best viewed at 1024x768.
Page last updated 2005-06-22.
This site is
PIKT®
powered.
PIKT® is a registered trademark of the University of Chicago.
Copyright © 1998-2005 Robert Osterlund. All rights reserved.
|