Fix copy_host_file for files containing quotes (I hope)

`man printf` says \" is treated as a quote, but not \'. So
let's have the command use double quotes to wrap the format,
and escape any double quotes in the text. Hope this works.
This commit is contained in:
Adam Williamson 2017-01-15 10:52:14 -08:00
parent 3e44c7b99f
commit e848ce768e

View File

@ -88,7 +88,9 @@ sub clone_host_file {
while (<$fh>) {
$text .= $_;
}
assert_script_run "printf '$text' > $file";
# escape any ' characters in the text...
$text =~ s/"/\\"/g;
assert_script_run "printf \"$text\" > $file";
# for debugging...
assert_script_run "cat $file";
}