X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=fish%2Ffish.c;h=43b7eee209cd458edf1a677728a676865b22cd2d;hp=19a551c8262f5b7f562e5cbc4b8bc0be00eb0f53;hb=3eb76554ef1f2f218f8920d9a8b8fb4ba6b21d66;hpb=31a2c006cd6486f0ca5afb11e42bcc412385a074 diff --git a/fish/fish.c b/fish/fish.c index 19a551c..43b7eee 100644 --- a/fish/fish.c +++ b/fish/fish.c @@ -113,11 +113,11 @@ usage (int status) fprintf (stdout, _("%s: guest filesystem shell\n" "%s lets you edit virtual machine filesystems\n" - "Copyright (C) 2009 Red Hat Inc.\n" + "Copyright (C) 2009-2010 Red Hat Inc.\n" "Usage:\n" " %s [--options] cmd [: cmd : cmd ...]\n" - " %s -i libvirt-domain\n" - " %s -i disk-image(s)\n" + " %s [--ro] -i -a disk-image\n" + " %s [--ro] -i -d libvirt-domain\n" "or for interactive use:\n" " %s\n" "or from a shell script:\n" @@ -599,8 +599,21 @@ mount_mps (struct mp *mp) */ const char *options = read_only ? "ro" : ""; r = guestfs_mount_options (g, options, mp->device, mp->mountpoint); - if (r == -1) + if (r == -1) { + /* Display possible mountpoints before exiting. */ + char **fses = guestfs_list_filesystems (g); + if (fses == NULL || fses[0] == NULL) + goto out; + fprintf (stderr, + _("guestfish: '%s' could not be mounted. Did you mean one of these?\n"), + mp->device); + size_t i; + for (i = 0; fses[i] != NULL; i += 2) + fprintf (stderr, "\t%s (%s)\n", fses[i], fses[i+1]); + + out: exit (EXIT_FAILURE); + } } } @@ -1214,10 +1227,7 @@ display_builtin_command (const char *cmd) " running \"cat\", editing locally, and then \"write\".\n" "\n" " Normally it uses $EDITOR, but if you use the aliases\n" - " \"vi\" or \"emacs\" you will get those editors.\n" - "\n" - " NOTE: This will not work reliably for large files\n" - " (> 2 MB) or binary files containing \\0 bytes.\n")); + " \"vi\" or \"emacs\" you will get those editors.\n")); return 0; } else if (STRCASEEQ (cmd, "lcd")) { @@ -1263,10 +1273,7 @@ display_builtin_command (const char *cmd) " running \"cat\" and using the pager.\n" "\n" " Normally it uses $PAGER, but if you use the alias\n" - " \"less\" then it always uses \"less\".\n" - "\n" - " NOTE: This will not work reliably for large files\n" - " (> 2 MB) or binary files containing \\0 bytes.\n")); + " \"less\" then it always uses \"less\".\n")); return 0; } else if (STRCASEEQ (cmd, "quit") ||