stevenrh has asked for the wisdom of the Perl Monks concerning the following question:
Hi monks,
I have a drive space script (not mine,actually, but we're using it---we don't deserve any credit for it :)) that is running to try to determine user directory usage.
When it runs, it dies on a user's subdir with an apostrophe. I wonder if there is an "if" loop i can put into the following script to either escape the character(s) or to just skip the folder/dir.
here is the script, the error follows:
#!/bin/perl -w # # find big directories in a particular file system # ---- prompt user ---- print "directory> "; $partName="/home/users/"; chomp $partName; # ---- prompt user ---- print "size (in KB)> "; $dirSize="50000"; chomp $dirSize; # ---- find directories ---- @dirs=`find $partName -mount -type d | xargs du -sk`; # ---- print details on large directories ---- for $_ ( @dirs ) { chomp; my($size,$dirname) = split; if ( $size > $dirSize ) { if ( $size > 1000000 ) { # convert to GB $GB=$size/1000000; printf "%8.2f %s %s", $GB, "GB", "$dirname\n"; } elsif ( $size > 1000 ) { # convert to MB $MB=$size/1000; printf "%8.2f %s %s", $MB, "MB", "$dirname\n"; } else { printf "%8.2f %s %s", $size, "KB", "$dirname\n"; } } }
after /home/users is /home/users/0-z..etc/0-z...etc for the first two characters in their username..
xargs: Missing quote: /home/users/b/l/blah/
stuff/webtemp/MP#s
the MP#s in the error actually has a folder named "MP3's"
ANY
help would be appreciated....
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: drive space script dies on certain characters...
by trammell (Priest) on Jan 18, 2005 at 17:05 UTC | |
Re: drive space script dies on certain characters...
by legato (Monk) on Jan 18, 2005 at 17:30 UTC | |
Re: drive space script dies on certain characters...
by qq (Hermit) on Jan 18, 2005 at 17:10 UTC | |
Re: drive space script dies on certain characters...
by gwhite (Friar) on Jan 18, 2005 at 17:08 UTC |
Back to
Seekers of Perl Wisdom