summaryrefslogtreecommitdiffstats
path: root/perl
diff options
context:
space:
mode:
Diffstat (limited to 'perl')
-rw-r--r--perl/Guestfs.xs16
-rw-r--r--perl/lib/Sys/Guestfs.pm10
2 files changed, 26 insertions, 0 deletions
diff --git a/perl/Guestfs.xs b/perl/Guestfs.xs
index 580b743d..14a92258 100644
--- a/perl/Guestfs.xs
+++ b/perl/Guestfs.xs
@@ -914,3 +914,19 @@ lvm_remove_all (g)
croak ("lvm_remove_all: %s", guestfs_last_error (g));
}
+SV *
+file (g, path)
+ guestfs_h *g;
+ char *path;
+PREINIT:
+ char *description;
+ CODE:
+ description = guestfs_file (g, path);
+ if (description == NULL) {
+ croak ("file: %s", guestfs_last_error (g));
+ }
+ RETVAL = newSVpv (description, 0);
+ free (description);
+ OUTPUT:
+ RETVAL
+
diff --git a/perl/lib/Sys/Guestfs.pm b/perl/lib/Sys/Guestfs.pm
index c708a29c..9d050b47 100644
--- a/perl/lib/Sys/Guestfs.pm
+++ b/perl/lib/Sys/Guestfs.pm
@@ -289,6 +289,16 @@ This returns C<true> if and only if there is a file, directory
See also C<$h-E<gt>is_file>, C<$h-E<gt>is_dir>, C<$h-E<gt>stat>.
+=item $description = $h->file ($path);
+
+This call uses the standard L<file(1)> command to determine
+the type or contents of the file. This also works on devices,
+for example to find out whether a partition contains a filesystem.
+
+The exact command which runs is C<file -bsL path>. Note in
+particular that the filename is not prepended to the output
+(the C<-b> option).
+
=item $autosync = $h->get_autosync ();
Get the autosync flag.