[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdesdk/scripts
From:       Oswald Buddenhagen <ossi () kde ! org>
Date:       2005-02-13 10:19:37
Message-ID: 20050213101937.2C4E31D177 () office ! kde ! org
[Download RAW message or body]

CVS commit by ossi: 

--help & --dry-run


  M +31 -10    cvs-clean   1.2


--- kdesdk/scripts/cvs-clean  #1.1:1.2
@@ -13,18 +13,22 @@
 #
 
+my $dry_run = 0;
+
 sub rmrf()
 {
-  my $fn = shift;
-  lstat ($fn);
-  if (-d _) {
-    if (opendir (DIR, $fn)) {
-      for my $efn (grep (!/^\.\.?$/, readdir (DIR))) {
-        &rmrf ($fn."/".$efn);
+  if (!$dry_run) {
+    my $fn = shift;
+    lstat ($fn);
+    if (-d _) {
+      if (opendir (DIR, $fn)) {
+        for my $efn (grep (!/^\.\.?$/, readdir (DIR))) {
+          &rmrf ($fn."/".$efn);
+        }
+        closedir (DIR);
+        rmdir ($fn);
       }
-      closedir (DIR);
-      rmdir ($fn);
+    } else {
+      unlink ($fn);
     }
-  } else {
-    unlink ($fn);
   }
 }
@@ -85,3 +89,20 @@
 }
 
+my $usage = 
+  "usage: cvs-clean [options]\n".
+  "    --help | -h      print usage information\n".
+  "    --dry-run | -n   print intended actions; don't change filesystem\n";
+
+foreach my $arg (@ARGV) {
+  if ($arg eq '-h' || $arg eq '--help') {
+    print $usage;
+    exit (0);
+  } elsif ($arg eq '-n' || $arg eq '--dry-run') {
+    $dry_run = 1;
+  } else {
+    print STDERR "cvs-clean: unknown argument '".$arg."'\n\n".$usage;
+    exit (1);
+  }
+}
+
 &cvsclean ("");


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic