summaryrefslogtreecommitdiff
path: root/beagle/debian-rfs/usr/bin/debconf-escape
diff options
context:
space:
mode:
authorManuel Traut <manut@mecka.net>2011-04-29 09:09:27 +0200
committerManuel Traut <manut@mecka.net>2011-04-29 09:09:27 +0200
commit5238ad5a0c4a9e1c8cd036f5de4055e39bd71297 (patch)
tree4407c087b9fb5432b1dc11e70b52dacfa0b99feb /beagle/debian-rfs/usr/bin/debconf-escape
parent60ead65c41afba7e6aa4bbcf507a1d52f7a8fe9f (diff)
added debootstrap stuff
Signed-off-by: Manuel Traut <manut@mecka.net>
Diffstat (limited to 'beagle/debian-rfs/usr/bin/debconf-escape')
-rwxr-xr-xbeagle/debian-rfs/usr/bin/debconf-escape47
1 files changed, 47 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/bin/debconf-escape b/beagle/debian-rfs/usr/bin/debconf-escape
new file mode 100755
index 0000000..fdff906
--- /dev/null
+++ b/beagle/debian-rfs/usr/bin/debconf-escape
@@ -0,0 +1,47 @@
+#!/usr/bin/perl -w
+# This file was preprocessed, do not edit!
+
+
+use strict;
+use Getopt::Long;
+
+use vars qw($escape $unescape);
+
+sub usage {
+ print STDERR <<EOF;
+Usage: debconf-unescape -e|-u < input-text
+ -e, --escape escape text
+ -u, --unescape unescape text
+
+Exactly one of -e or -u must be used.
+EOF
+ exit(1);
+}
+
+$escape=0;
+$unescape=0;
+
+GetOptions(
+ "escape|e" => \$escape,
+ "unescape|u" => \$unescape,
+) || usage();
+
+if ($escape == $unescape) {
+ usage();
+}
+
+if ($escape) {
+ while (<>) {
+ s/\\/\\\\/g;
+ s/\n/\\n/g;
+ print;
+ }
+} else {
+ while (<>) {
+ for (split /(\\.)/) {
+ s/\\(.)/$1 eq "n" ? "\n" : $1/eg;
+ print;
+ }
+ }
+}
+