I am waiting for my Mac to finish defragmenting my hard drive, anyway I was humming a tune and it turned into this.
Run slow, sweet defragment
running fore to optimize disks....
Seriously. I haven't really coded anything since my college days, and never scripted for Unix. But I hate automating things that can grow forever. I have seen many people discussing using crontab to run weekly permission repairs, but they all seem to append to the same document. I have been testing this script, which I believe should not allow this to grow forever, but keep at least a month of activity logged. Does this look good. Any suggestions on how to improve it. Problems with text wrapping so I am spacing out the if statements for readability.
***
#!/bin/sh -
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
if [ -x /usr/bin/gzip ]; then gzext=".gz"; else gzext=""; fi
cd /var/log
if [ -f "dskrpr.log.3${gzext}" ] ; then rm "dskrpr.log.3${gzext}" ; fi
if [ -f "dskrpr.log.2${gzext}" ] ; then mv -f "dskrpr.log.2${gzext}" "dskrpr.log3.${gzext}" ; fi
if [ -f "dskrpr.log.1${gzext}" ] ; then mv -f "dskrpr.log.1${gzext}" "dskrpr.log.2${gzext}" ; fi
if [ -f "dskrpr.log.0${gzext}" ] ; then mv -f "dskrpr.log.0${gzext}" "dskrpr.log.1${gzext}" ; fi
if [ -f "dskrpr.log" ] ; then cp -pf dskrpr.log dskrpr.log.0 ; if [ -x /usr/bin/gzip ]; then gzip -9 dskrpr.log.0; fi ; fi
echo Repair Permissions log files successfully rotated > /var/log/dskrpr.log
echo `date` Beginning the repair of system permissions >> /var/log/dskrpr.log
diskutil repairPermissions / >> /var/log/dskrpr.log
echo `date` Finished >> /var/log/dskrpr.log
***
Thanks
Run slow, sweet defragment
running fore to optimize disks....
Seriously. I haven't really coded anything since my college days, and never scripted for Unix. But I hate automating things that can grow forever. I have seen many people discussing using crontab to run weekly permission repairs, but they all seem to append to the same document. I have been testing this script, which I believe should not allow this to grow forever, but keep at least a month of activity logged. Does this look good. Any suggestions on how to improve it. Problems with text wrapping so I am spacing out the if statements for readability.
***
#!/bin/sh -
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin
if [ -x /usr/bin/gzip ]; then gzext=".gz"; else gzext=""; fi
cd /var/log
if [ -f "dskrpr.log.3${gzext}" ] ; then rm "dskrpr.log.3${gzext}" ; fi
if [ -f "dskrpr.log.2${gzext}" ] ; then mv -f "dskrpr.log.2${gzext}" "dskrpr.log3.${gzext}" ; fi
if [ -f "dskrpr.log.1${gzext}" ] ; then mv -f "dskrpr.log.1${gzext}" "dskrpr.log.2${gzext}" ; fi
if [ -f "dskrpr.log.0${gzext}" ] ; then mv -f "dskrpr.log.0${gzext}" "dskrpr.log.1${gzext}" ; fi
if [ -f "dskrpr.log" ] ; then cp -pf dskrpr.log dskrpr.log.0 ; if [ -x /usr/bin/gzip ]; then gzip -9 dskrpr.log.0; fi ; fi
echo Repair Permissions log files successfully rotated > /var/log/dskrpr.log
echo `date` Beginning the repair of system permissions >> /var/log/dskrpr.log
diskutil repairPermissions / >> /var/log/dskrpr.log
echo `date` Finished >> /var/log/dskrpr.log
***
Thanks