--- /dev/null
+#!/usr/bin/perl
+#
+# A nice little script written by Matt Howard that will
+# convert old style Bacula FileSets into the new style.
+#
+# fileset_convert.pl bacula-dir.conf >output-file
+#
+use warnings;
+use strict;
+
+my $in;
+$in .= $_ while (<>);
+
+sub options {
+ return "Options { ".join('; ',split(/\s+/, shift)) . " } ";
+}
+
+sub file_lines {
+ return join($/, map {" File = $_"} split(/\n\s*/, shift));
+}
+
+$in =~ s/Include\s*=\s*((?:\w+=\w+\s+)*){\s*((?:.*?\n)+?)\s*}/
+ "Include { " .
+ ( $1 ? options($1) : '' ) . "\n" .
+ file_lines($2) .
+ "\n }\n" /eg;
+
+$in =~ s/Exclude\s*=\s*{\s*((?:.*?\n)+?)\s*}/
+ "Exclude {\n" . file_lines($1) . "\n }\n"/eg;
+
+print $in;