X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=guestfish.pod;h=4341e2aea4a89047361fc341c32eb1db0c6caa21;hp=0870b9ee88e33dc5be48c463049f210cf6f0cf9e;hb=e547e639b14072bc238cf161669bc3d94a8d6e13;hpb=efdf252102a65b691e405f80de4261dfc8a0035b diff --git a/guestfish.pod b/guestfish.pod index 0870b9e..4341e2a 100644 --- a/guestfish.pod +++ b/guestfish.pod @@ -49,13 +49,13 @@ Remove C (in reality not such a great idea): =head2 As an interactive shell $ guestfish - + Welcome to guestfish, the libguestfs filesystem interactive shell for editing virtual machine filesystems. - + Type: 'help' for help with commands 'quit' to quit the shell - + > help =head2 As a script interpreter @@ -282,6 +282,32 @@ will create a directory C on the host, and then export the contents of C on the mounted filesystem to C. (See C). +=head1 PIPES + +Use CspaceE | command> to pipe the output of the +first command (a guestfish command) to the second command (any host +command). For example: + + cat /etc/passwd | awk -F: '$3 == 0 { print }' + +(where C is the guestfish cat command, but C is the host awk +program). The above command would list all accounts in the guest +filesystem which have UID 0, ie. root accounts including backdoors. +Other examples: + + hexdump /bin/ls | head + list-devices | tail -1 + +The space before the pipe symbol is required, any space after the pipe +symbol is optional. Everything after the pipe symbol is just passed +straight to the host shell, so it can contain redirections, globs and +anything else that makes sense on the host side. + +To use a literal argument which begins with a pipe symbol, you have +to quote it, eg: + + echo "|" + =head1 EXIT ON ERROR BEHAVIOUR By default, guestfish will ignore any errors when in interactive mode @@ -293,19 +319,10 @@ If you prefix a command with a I<-> character, then that command will not cause guestfish to exit, even if that (one) command returns an error. -=head1 COMMANDS - -=head2 help - - help - help cmd - -Without any parameter, this lists all commands. With a C -parameter, this displays detailed help for a command. - -=head2 quit | exit +=head1 GUESTFISH COMMANDS -This exits guestfish. You can also use C<^D> key. +The commands in this section are guestfish convenience commands, in +other words, they are not part of the L API. =head2 alloc | allocate @@ -358,6 +375,23 @@ editors. NOTE: This will not work reliably for large files (> 2 MB) or binary files containing \0 bytes. +=head2 glob + + glob command args... + +Expand wildcards in any paths in the args list, and run C +repeatedly on each matching path. + +See section WILDCARDS AND GLOBBING. + +=head2 help + + help + help cmd + +Without any parameter, this lists all commands. With a C +parameter, this displays detailed help for a command. + =head2 lcd lcd directory @@ -367,14 +401,32 @@ itself. Note that C won't do what you might expect. -=head2 glob +=head2 more | less - glob command args... + more filename -Expand wildcards in any paths in the args list, and run C -repeatedly on each matching path. + less filename -See section WILDCARDS AND GLOBBING. +This is used to view a file. + +The default viewer is C<$PAGER>. However if you use the alternate +command C you will get the C command specifically. + +NOTE: This will not work reliably for large files +(> 2 MB) or binary files containing \0 bytes. + +=head2 quit | exit + +This exits guestfish. You can also use C<^D> key. + +=head2 time + + time command args... + +Run the command as usual, but print the elapsed time afterwards. This +can be useful for benchmarking operations. + +=head1 COMMANDS @ACTIONS@ @@ -382,11 +434,32 @@ See section WILDCARDS AND GLOBBING. =over 4 +=item EDITOR + +The C command uses C<$EDITOR> as the editor. If not +set, it uses C. + +=item HOME + +If compiled with GNU readline support, then the command history +is saved in C<$HOME/.guestfish> + +=item LIBGUESTFS_APPEND + +Pass additional options to the guest kernel. + =item LIBGUESTFS_DEBUG Set C to enable verbose messages. This has the same effect as using the B<-v> option. +=item LIBGUESTFS_MEMSIZE + +Set the memory allocated to the qemu process, in megabytes. For +example: + + LIBGUESTFS_MEMSIZE=700 + =item LIBGUESTFS_PATH Set the path that guestfish uses to search for kernel and initrd.img. @@ -398,19 +471,10 @@ Set the default qemu binary that libguestfs uses. If not set, then the qemu which was found at compile time by the configure script is used. -=item LIBGUESTFS_APPEND +=item PAGER -Pass additional options to the guest kernel. - -=item HOME - -If compiled with GNU readline support, then the command history -is saved in C<$HOME/.guestfish> - -=item EDITOR - -The C command uses C<$EDITOR> as the editor. If not -set, it uses C. +The C command uses C<$PAGER> as the pager. If not +set, it uses C. =back