[Libguestfs] \n didn't lead to a new line while using remote model
Richard W.M. Jones
rjones at redhat.com
Wed Jul 29 12:42:53 UTC 2015
On Wed, Jul 29, 2015 at 04:18:02PM +0800, Yu Liu wrote:
[...]
> Let's make an example:
>
> #guestfish -a disk.img
> >run
> >mount /dev/sda1 /
> >write-append /a.txt "Hello\n"
> >write-append /a.txt "World\n"
> >cat /a.txt
> Hello
> World
>
> >quit
>
> Another try:
> eval `guestfish --listen`
> guestfish --remote add disk.img
> guestfish --remote run
> guestfish --remote mount /dev/sda1 /
> guestfish --remote write-append /a.txt "Hello\n"
> guestfish --remote write-append /a.txt "World\n"
> guestfish --remote cat /a.txt
> Hello\nWorld\n
>
> #
> libguestfs-1.20.11-11.el6.x86_64
The problem is that \n is handled "specially" by guestfish when it is
reading the ><fs> command line, but not when it is parsing commands
sent via --remote.
The way to do this is:
$ guestfish --remote write /a.txt "hello
world"
$ guestfish --remote cat /a.txt
hello
world
Note that you have to actually press the [Return] key after "hello
Probably a better plan is to use something like python remoting:
https://rwmj.wordpress.com/2013/05/07/using-libguestfs-remotely-with-python-and-rpyc/#content
which will be more predictable.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html
More information about the Libguestfs
mailing list