26.12.2016 17:44, Jakub Jermář пишет: > Hi, > > I am observing a strange behavior when passing boot arguments with a > backslash to the kernel (the multiboot cmd_line via the multiboot > command in grub.cfg). I would like to pass foo\bar to the kernel, but to > no avail. I tried: >
Which kernel? What do you load? > foo\bar gets passed as foobar > foo\\bar gets passed as foo\\bar > 'foo\bar' gets passed as foo\\bar > "foo\bar" gets passed as foo\\bar > > Note that the backslash gets doubled when I try to escape it. > > I am using grub 2.02~beta2, revision > bc220962e366b1b46769ed6f9fa5be603ba58ab5. > > How does one pass foo\bar so that the back slash does not get eaten or > doubled? > You can't currently. I do not know what was intended when grub cmdline was written, but the way it quotes string is definitely not compatible with linux kernel (which only recognizes `"' as valid quote character). I wonder *what* supports quoting used by grub (which is effectively shell quoting). Could you please open formal bug report on savannah, so we could discuss its priority. And yes, this is not the first report. Actually there could be similar bug already. _______________________________________________ Bug-grub mailing list [email protected] https://lists.gnu.org/mailman/listinfo/bug-grub
