require "filename_helper.pl";
-use Env qw($TMP $color_add $TERM);
+use Env qw($TMP $color_add $ls_dot_add $TERM);
local($chewed_line) = "";
local(@arg_list);
@arg_list = &glob_list(@ARGV);
}
+# add parameters to our chewed_line, but skip items if they are flags we don't
+# implement.
foreach $dir (@arg_list) {
+#hmmm: fix this by using a pattern, to exclude cmd line parms, but recognize some of them, like recursive? hmmm.
+ if ($dir eq "-al") { next; } # skip ls directives.
+ if ($dir eq "-l") { next; } # skip ls directives.
$chewed_line = $chewed_line . " \"$dir\"";
}
# show the header, now that we know there's something to print.
print "[" . $print_list . "]\n\n";
-##print "chewed_line is: $chewed_line\n";
-
local($temp_file)=`mktemp "$TMP/zz_frdsumdir.XXXXXX"`;
chop($temp_file);
# drop the main payload, the list of directory info, but also save that
# info to a file for analysis.
-system("ls -HhlF $color_add $chewed_line");
-system("ls -HhlF $color_add $chewed_line > $temp_file");
+system("ls -HhlF $ls_dot_add $color_add $chewed_line");
+system("ls -HhlF $ls_dot_add $color_add $chewed_line > $temp_file");
# the color_add variable, if defined, will have flags for setting the
# directory listing color scheme.
-##print "file is: $temp_file\n";
-
local($lengths) = 0;
# open the file and process the lines to get file lengths.
foreach $file_line (<DIRLIST>) {
if ($file_line =~ /$pattern/) {
(local $munged = $file_line) =~ s/$pattern/\1/;
- #print "munge=$munged\n";
if ($munged =~ /K$/) {
chop $munged;
$munged *= 1024.0;
close(DIRLIST);
unlink($temp_file); # clean up.
-#print "lens are: $lengths\n";
-
local($total)=int($lengths);
local($kbytes)=int($total / 102.4) / 10;
local($mbytes)=int($kbytes / 102.4) / 10;
+local($gbytes)=int($mbytes / 102.4) / 10;
print "\n";
-print "These files occupy $total bytes ($kbytes KB / $mbytes MB).\n";
+# print a fancy listing showing bytes at least, but only showing mb and gb if appropriate.
+print "These files occupy $total bytes ($kbytes KB";
+if ($mbytes ne 0) {
+ print " / $mbytes MB";
+}
+if ($gbytes ne 0) {
+ print " / $gbytes GB";
+}
+print ").\n";
+
print "Overall Drive Usage (megs):\n";
system("df -m $chewed_line >$temp_file");