2583 Add -p (parsable) option to zfs list
illumos/illumos-gate@43d68d68c1
This commit is contained in:
parent
9dd8627f2d
commit
59181d461b
@ -18,8 +18,10 @@
|
||||
*
|
||||
* CDDL HEADER END
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2013 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <libintl.h>
|
||||
@ -107,7 +109,8 @@ zfs_callback(zfs_handle_t *zhp, void *data)
|
||||
cb->cb_props_table);
|
||||
|
||||
if (zfs_expand_proplist(zhp, cb->cb_proplist,
|
||||
(cb->cb_flags & ZFS_ITER_RECVD_PROPS))
|
||||
(cb->cb_flags & ZFS_ITER_RECVD_PROPS),
|
||||
(cb->cb_flags & ZFS_ITER_LITERAL_PROPS))
|
||||
!= 0) {
|
||||
free(node);
|
||||
return (-1);
|
||||
|
@ -18,9 +18,11 @@
|
||||
*
|
||||
* CDDL HEADER END
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
|
||||
* Use is subject to license terms.
|
||||
* Copyright 2013 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef ZFS_ITER_H
|
||||
@ -43,6 +45,7 @@ typedef struct zfs_sort_column {
|
||||
#define ZFS_ITER_PROP_LISTSNAPS (1 << 2)
|
||||
#define ZFS_ITER_DEPTH_LIMIT (1 << 3)
|
||||
#define ZFS_ITER_RECVD_PROPS (1 << 4)
|
||||
#define ZFS_ITER_LITERAL_PROPS (1 << 5)
|
||||
|
||||
int zfs_for_each(int, char **, int options, zfs_type_t,
|
||||
zfs_sort_column_t *, zprop_list_t **, int, zfs_iter_f, void *);
|
||||
|
@ -21,11 +21,11 @@
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2012 Nexenta Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2012 by Delphix. All rights reserved.
|
||||
* Copyright 2012 Milan Jurik. All rights reserved.
|
||||
* Copyright (c) 2012, Joyent, Inc. All rights reserved.
|
||||
* Copyright (c) 2013 Steven Hartland. All rights reserved.
|
||||
* Copyright 2013 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <assert.h>
|
||||
@ -232,9 +232,8 @@ get_usage(zfs_help_t idx)
|
||||
return (gettext("\tupgrade [-v]\n"
|
||||
"\tupgrade [-r] [-V version] <-a | filesystem ...>\n"));
|
||||
case HELP_LIST:
|
||||
return (gettext("\tlist [-rH][-d max] "
|
||||
"[-o property[,...]] [-t type[,...]] [-s property] ...\n"
|
||||
"\t [-S property] ... "
|
||||
return (gettext("\tlist [-Hp] [-r|-d max] [-o property[,...]] "
|
||||
"[-s property]...\n\t [-S property]... [-t type[,...]] "
|
||||
"[filesystem|volume|snapshot] ...\n"));
|
||||
case HELP_MOUNT:
|
||||
return (gettext("\tmount\n"
|
||||
@ -291,12 +290,12 @@ get_usage(zfs_help_t idx)
|
||||
"<filesystem|volume>\n"));
|
||||
case HELP_USERSPACE:
|
||||
return (gettext("\tuserspace [-Hinp] [-o field[,...]] "
|
||||
"[-s field] ...\n\t[-S field] ... "
|
||||
"[-t type[,...]] <filesystem|snapshot>\n"));
|
||||
"[-s field]...\n\t [-S field]... [-t type[,...]] "
|
||||
"<filesystem|snapshot>\n"));
|
||||
case HELP_GROUPSPACE:
|
||||
return (gettext("\tgroupspace [-Hinp] [-o field[,...]] "
|
||||
"[-s field] ...\n\t[-S field] ... "
|
||||
"[-t type[,...]] <filesystem|snapshot>\n"));
|
||||
"[-s field]...\n\t [-S field]... [-t type[,...]] "
|
||||
"<filesystem|snapshot>\n"));
|
||||
case HELP_HOLD:
|
||||
return (gettext("\thold [-r] <tag> <snapshot> ...\n"));
|
||||
case HELP_HOLDS:
|
||||
@ -2104,7 +2103,7 @@ zfs_do_upgrade(int argc, char **argv)
|
||||
* -i Translate SID to POSIX ID.
|
||||
* -n Print numeric ID instead of user/group name.
|
||||
* -o Control which fields to display.
|
||||
* -p Use exact (parseable) numeric output.
|
||||
* -p Use exact (parsable) numeric output.
|
||||
* -s Specify sort columns, descending order.
|
||||
* -S Specify sort columns, ascending order.
|
||||
* -t Control which object types to display.
|
||||
@ -2782,24 +2781,25 @@ zfs_do_userspace(int argc, char **argv)
|
||||
}
|
||||
|
||||
/*
|
||||
* list [-r][-d max] [-H] [-o property[,property]...] [-t type[,type]...]
|
||||
* [-s property [-s property]...] [-S property [-S property]...]
|
||||
* <dataset> ...
|
||||
* list [-Hp][-r|-d max] [-o property[,...]] [-s property] ... [-S property] ...
|
||||
* [-t type[,...]] [filesystem|volume|snapshot] ...
|
||||
*
|
||||
* -r Recurse over all children
|
||||
* -H Scripted mode; elide headers and separate columns by tabs.
|
||||
* -p Display values in parsable (literal) format.
|
||||
* -r Recurse over all children.
|
||||
* -d Limit recursion by depth.
|
||||
* -H Scripted mode; elide headers and separate columns by tabs
|
||||
* -o Control which fields to display.
|
||||
* -t Control which object types to display.
|
||||
* -s Specify sort columns, descending order.
|
||||
* -S Specify sort columns, ascending order.
|
||||
* -t Control which object types to display.
|
||||
*
|
||||
* When given no arguments, lists all filesystems in the system.
|
||||
* When given no arguments, list all filesystems in the system.
|
||||
* Otherwise, list the specified datasets, optionally recursing down them if
|
||||
* '-r' is specified.
|
||||
*/
|
||||
typedef struct list_cbdata {
|
||||
boolean_t cb_first;
|
||||
boolean_t cb_literal;
|
||||
boolean_t cb_scripted;
|
||||
zprop_list_t *cb_proplist;
|
||||
} list_cbdata_t;
|
||||
@ -2808,8 +2808,9 @@ typedef struct list_cbdata {
|
||||
* Given a list of columns to display, output appropriate headers for each one.
|
||||
*/
|
||||
static void
|
||||
print_header(zprop_list_t *pl)
|
||||
print_header(list_cbdata_t *cb)
|
||||
{
|
||||
zprop_list_t *pl = cb->cb_proplist;
|
||||
char headerbuf[ZFS_MAXPROPLEN];
|
||||
const char *header;
|
||||
int i;
|
||||
@ -2850,19 +2851,19 @@ print_header(zprop_list_t *pl)
|
||||
* to the described layout.
|
||||
*/
|
||||
static void
|
||||
print_dataset(zfs_handle_t *zhp, zprop_list_t *pl, boolean_t scripted)
|
||||
print_dataset(zfs_handle_t *zhp, list_cbdata_t *cb)
|
||||
{
|
||||
zprop_list_t *pl = cb->cb_proplist;
|
||||
boolean_t first = B_TRUE;
|
||||
char property[ZFS_MAXPROPLEN];
|
||||
nvlist_t *userprops = zfs_get_user_props(zhp);
|
||||
nvlist_t *propval;
|
||||
char *propstr;
|
||||
boolean_t right_justify;
|
||||
int width;
|
||||
|
||||
for (; pl != NULL; pl = pl->pl_next) {
|
||||
if (!first) {
|
||||
if (scripted)
|
||||
if (cb->cb_scripted)
|
||||
(void) printf("\t");
|
||||
else
|
||||
(void) printf(" ");
|
||||
@ -2872,22 +2873,22 @@ print_dataset(zfs_handle_t *zhp, zprop_list_t *pl, boolean_t scripted)
|
||||
|
||||
if (pl->pl_prop != ZPROP_INVAL) {
|
||||
if (zfs_prop_get(zhp, pl->pl_prop, property,
|
||||
sizeof (property), NULL, NULL, 0, B_FALSE) != 0)
|
||||
sizeof (property), NULL, NULL, 0,
|
||||
cb->cb_literal) != 0)
|
||||
propstr = "-";
|
||||
else
|
||||
propstr = property;
|
||||
|
||||
right_justify = zfs_prop_align_right(pl->pl_prop);
|
||||
} else if (zfs_prop_userquota(pl->pl_user_prop)) {
|
||||
if (zfs_prop_get_userquota(zhp, pl->pl_user_prop,
|
||||
property, sizeof (property), B_FALSE) != 0)
|
||||
property, sizeof (property), cb->cb_literal) != 0)
|
||||
propstr = "-";
|
||||
else
|
||||
propstr = property;
|
||||
right_justify = B_TRUE;
|
||||
} else if (zfs_prop_written(pl->pl_user_prop)) {
|
||||
if (zfs_prop_get_written(zhp, pl->pl_user_prop,
|
||||
property, sizeof (property), B_FALSE) != 0)
|
||||
property, sizeof (property), cb->cb_literal) != 0)
|
||||
propstr = "-";
|
||||
else
|
||||
propstr = property;
|
||||
@ -2902,19 +2903,17 @@ print_dataset(zfs_handle_t *zhp, zprop_list_t *pl, boolean_t scripted)
|
||||
right_justify = B_FALSE;
|
||||
}
|
||||
|
||||
width = pl->pl_width;
|
||||
|
||||
/*
|
||||
* If this is being called in scripted mode, or if this is the
|
||||
* last column and it is left-justified, don't include a width
|
||||
* format specifier.
|
||||
*/
|
||||
if (scripted || (pl->pl_next == NULL && !right_justify))
|
||||
if (cb->cb_scripted || (pl->pl_next == NULL && !right_justify))
|
||||
(void) printf("%s", propstr);
|
||||
else if (right_justify)
|
||||
(void) printf("%*s", width, propstr);
|
||||
(void) printf("%*s", pl->pl_width, propstr);
|
||||
else
|
||||
(void) printf("%-*s", width, propstr);
|
||||
(void) printf("%-*s", pl->pl_width, propstr);
|
||||
}
|
||||
|
||||
(void) printf("\n");
|
||||
@ -2930,11 +2929,11 @@ list_callback(zfs_handle_t *zhp, void *data)
|
||||
|
||||
if (cbp->cb_first) {
|
||||
if (!cbp->cb_scripted)
|
||||
print_header(cbp->cb_proplist);
|
||||
print_header(cbp);
|
||||
cbp->cb_first = B_FALSE;
|
||||
}
|
||||
|
||||
print_dataset(zhp, cbp->cb_proplist, cbp->cb_scripted);
|
||||
print_dataset(zhp, cbp);
|
||||
|
||||
return (0);
|
||||
}
|
||||
@ -2943,7 +2942,6 @@ static int
|
||||
zfs_do_list(int argc, char **argv)
|
||||
{
|
||||
int c;
|
||||
boolean_t scripted = B_FALSE;
|
||||
static char default_fields[] =
|
||||
"name,used,available,referenced,mountpoint";
|
||||
int types = ZFS_TYPE_DATASET;
|
||||
@ -2957,11 +2955,15 @@ zfs_do_list(int argc, char **argv)
|
||||
int flags = ZFS_ITER_PROP_LISTSNAPS | ZFS_ITER_ARGS_CAN_BE_PATHS;
|
||||
|
||||
/* check options */
|
||||
while ((c = getopt(argc, argv, ":d:o:rt:Hs:S:")) != -1) {
|
||||
while ((c = getopt(argc, argv, "HS:d:o:prs:t:")) != -1) {
|
||||
switch (c) {
|
||||
case 'o':
|
||||
fields = optarg;
|
||||
break;
|
||||
case 'p':
|
||||
cb.cb_literal = B_TRUE;
|
||||
flags |= ZFS_ITER_LITERAL_PROPS;
|
||||
break;
|
||||
case 'd':
|
||||
limit = parse_depth(optarg, &flags);
|
||||
break;
|
||||
@ -2969,7 +2971,7 @@ zfs_do_list(int argc, char **argv)
|
||||
flags |= ZFS_ITER_RECURSE;
|
||||
break;
|
||||
case 'H':
|
||||
scripted = B_TRUE;
|
||||
cb.cb_scripted = B_TRUE;
|
||||
break;
|
||||
case 's':
|
||||
if (zfs_add_sort_column(&sortcol, optarg,
|
||||
@ -3051,7 +3053,6 @@ zfs_do_list(int argc, char **argv)
|
||||
!= 0)
|
||||
usage(B_FALSE);
|
||||
|
||||
cb.cb_scripted = scripted;
|
||||
cb.cb_first = B_TRUE;
|
||||
|
||||
ret = zfs_for_each(argc, argv, flags, types, sortcol, &cb.cb_proplist,
|
||||
|
@ -21,10 +21,10 @@
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2011 Nexenta Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2012 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012, Joyent, Inc. All rights reserved.
|
||||
* Copyright (c) 2013 Steven Hartland. All rights reserved.
|
||||
* Copyright 2013 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef _LIBZFS_H
|
||||
@ -458,7 +458,8 @@ typedef struct zprop_list {
|
||||
boolean_t pl_fixed;
|
||||
} zprop_list_t;
|
||||
|
||||
extern int zfs_expand_proplist(zfs_handle_t *, zprop_list_t **, boolean_t);
|
||||
extern int zfs_expand_proplist(zfs_handle_t *, zprop_list_t **, boolean_t,
|
||||
boolean_t);
|
||||
extern void zfs_prune_proplist(zfs_handle_t *, uint8_t *);
|
||||
|
||||
#define ZFS_MOUNTPOINT_NONE "none"
|
||||
|
@ -23,9 +23,9 @@
|
||||
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2013 by Delphix. All rights reserved.
|
||||
* Copyright (c) 2012 DEY Storage Systems, Inc. All rights reserved.
|
||||
* Copyright 2012 Nexenta Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2013 Martin Matuska. All rights reserved.
|
||||
* Copyright (c) 2013 Steven Hartland. All rights reserved.
|
||||
* Copyright 2013 Nexenta Systems, Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <ctype.h>
|
||||
@ -3798,7 +3798,8 @@ zfs_get_recvd_props(zfs_handle_t *zhp)
|
||||
* of the RECEIVED column.
|
||||
*/
|
||||
int
|
||||
zfs_expand_proplist(zfs_handle_t *zhp, zprop_list_t **plp, boolean_t received)
|
||||
zfs_expand_proplist(zfs_handle_t *zhp, zprop_list_t **plp, boolean_t received,
|
||||
boolean_t literal)
|
||||
{
|
||||
libzfs_handle_t *hdl = zhp->zfs_hdl;
|
||||
zprop_list_t *entry;
|
||||
@ -3860,18 +3861,18 @@ zfs_expand_proplist(zfs_handle_t *zhp, zprop_list_t **plp, boolean_t received)
|
||||
* Now go through and check the width of any non-fixed columns
|
||||
*/
|
||||
for (entry = *plp; entry != NULL; entry = entry->pl_next) {
|
||||
if (entry->pl_fixed)
|
||||
if (entry->pl_fixed && !literal)
|
||||
continue;
|
||||
|
||||
if (entry->pl_prop != ZPROP_INVAL) {
|
||||
if (zfs_prop_get(zhp, entry->pl_prop,
|
||||
buf, sizeof (buf), NULL, NULL, 0, B_FALSE) == 0) {
|
||||
buf, sizeof (buf), NULL, NULL, 0, literal) == 0) {
|
||||
if (strlen(buf) > entry->pl_width)
|
||||
entry->pl_width = strlen(buf);
|
||||
}
|
||||
if (received && zfs_prop_get_recvd(zhp,
|
||||
zfs_prop_to_name(entry->pl_prop),
|
||||
buf, sizeof (buf), B_FALSE) == 0)
|
||||
buf, sizeof (buf), literal) == 0)
|
||||
if (strlen(buf) > entry->pl_recvd_width)
|
||||
entry->pl_recvd_width = strlen(buf);
|
||||
} else {
|
||||
@ -3884,7 +3885,7 @@ zfs_expand_proplist(zfs_handle_t *zhp, zprop_list_t **plp, boolean_t received)
|
||||
}
|
||||
if (received && zfs_prop_get_recvd(zhp,
|
||||
entry->pl_user_prop,
|
||||
buf, sizeof (buf), B_FALSE) == 0)
|
||||
buf, sizeof (buf), literal) == 0)
|
||||
if (strlen(buf) > entry->pl_recvd_width)
|
||||
entry->pl_recvd_width = strlen(buf);
|
||||
}
|
||||
|
@ -27,7 +27,7 @@
|
||||
.\" Copyright 2013 Nexenta Systems, Inc. All Rights Reserved.
|
||||
.\" Copyright (c) 2013, Joyent, Inc. All rights reserved.
|
||||
.\"
|
||||
.TH ZFS 1M "Jan 26, 2013"
|
||||
.TH ZFS 1M "Oct 16, 2013"
|
||||
.SH NAME
|
||||
zfs \- configures ZFS file systems
|
||||
.SH SYNOPSIS
|
||||
@ -95,7 +95,7 @@ zfs \- configures ZFS file systems
|
||||
|
||||
.LP
|
||||
.nf
|
||||
\fBzfs\fR \fBlist\fR [\fB-r\fR|\fB-d\fR \fIdepth\fR][\fB-H\fR][\fB-o\fR \fIproperty\fR[,\fIproperty\fR]...] [\fB-t\fR \fItype\fR[,\fItype\fR]...]
|
||||
\fBzfs\fR \fBlist\fR [\fB-r\fR|\fB-d\fR \fIdepth\fR][\fB-Hp\fR][\fB-o\fR \fIproperty\fR[,\fIproperty\fR]...] [\fB-t\fR \fItype\fR[,\fItype\fR]...]
|
||||
[\fB-s\fR \fIproperty\fR]... [\fB-S\fR \fIproperty\fR]... [\fIfilesystem\fR|\fIvolume\fR|\fIsnapshot\fR]...
|
||||
.fi
|
||||
|
||||
@ -248,7 +248,6 @@ zfs \- configures ZFS file systems
|
||||
\fBzfs\fR \fBdiff\fR [\fB-FHt\fR] \fIsnapshot\fR \fIsnapshot|filesystem\fR
|
||||
|
||||
.SH DESCRIPTION
|
||||
.sp
|
||||
.LP
|
||||
The \fBzfs\fR command configures \fBZFS\fR datasets within a \fBZFS\fR storage
|
||||
pool, as described in \fBzpool\fR(1M). A dataset is identified by a unique path
|
||||
@ -306,7 +305,6 @@ specified as \fIfilesystem@name\fR or \fIvolume@name\fR.
|
||||
.RE
|
||||
|
||||
.SS "ZFS File System Hierarchy"
|
||||
.sp
|
||||
.LP
|
||||
A \fBZFS\fR storage pool is a logical collection of devices that provide space
|
||||
for datasets. A storage pool is also the root of the \fBZFS\fR file system
|
||||
@ -320,7 +318,6 @@ characteristics, however, are managed by the \fBzpool\fR(1M) command.
|
||||
.LP
|
||||
See \fBzpool\fR(1M) for more information on creating and administering pools.
|
||||
.SS "Snapshots"
|
||||
.sp
|
||||
.LP
|
||||
A snapshot is a read-only copy of a file system or volume. Snapshots can be
|
||||
created extremely quickly, and initially consume no additional space within the
|
||||
@ -337,7 +334,6 @@ in the root of the file system. Snapshots are automatically mounted on demand
|
||||
and may be unmounted at regular intervals. The visibility of the \fB\&.zfs\fR
|
||||
directory can be controlled by the \fBsnapdir\fR property.
|
||||
.SS "Clones"
|
||||
.sp
|
||||
.LP
|
||||
A clone is a writable volume or file system whose initial contents are the same
|
||||
as another dataset. As with snapshots, creating a clone is nearly
|
||||
@ -357,7 +353,6 @@ The clone parent-child dependency relationship can be reversed by using the
|
||||
clone of the specified file system, which makes it possible to destroy the file
|
||||
system that the clone was created from.
|
||||
.SS "Mount Points"
|
||||
.sp
|
||||
.LP
|
||||
Creating a \fBZFS\fR file system is a simple operation, so the number of file
|
||||
systems per system is likely to be numerous. To cope with this, \fBZFS\fR
|
||||
@ -390,7 +385,6 @@ is set to \fBlegacy\fR, \fBZFS\fR makes no attempt to manage the file system,
|
||||
and the administrator is responsible for mounting and unmounting the file
|
||||
system.
|
||||
.SS "Zones"
|
||||
.sp
|
||||
.LP
|
||||
A \fBZFS\fR file system can be added to a non-global zone by using the
|
||||
\fBzonecfg\fR \fBadd fs\fR subcommand. A \fBZFS\fR file system that is added to
|
||||
@ -428,7 +422,6 @@ The global administrator can forcibly clear the \fBzoned\fR property, though
|
||||
this should be done with extreme care. The global administrator should verify
|
||||
that all the mount points are acceptable before clearing the property.
|
||||
.SS "Native Properties"
|
||||
.sp
|
||||
.LP
|
||||
Properties are divided into two types, native properties and user-defined (or
|
||||
"user") properties. Native properties either export internal statistics or
|
||||
@ -1536,7 +1529,6 @@ The \fBcasesensitivity\fR, \fBnormalization\fR, and \fButf8only\fR properties
|
||||
are also new permissions that can be assigned to non-privileged users by using
|
||||
the \fBZFS\fR delegated administration feature.
|
||||
.SS "Temporary Mount Point Properties"
|
||||
.sp
|
||||
.LP
|
||||
When a file system is mounted, either through \fBmount\fR(1M) for legacy mounts
|
||||
or the \fBzfs mount\fR command for normal file systems, its mount options are
|
||||
@ -1565,7 +1557,6 @@ are reported as "temporary" by the \fBzfs get\fR command. If the properties are
|
||||
changed while the dataset is mounted, the new setting overrides any temporary
|
||||
settings.
|
||||
.SS "User Properties"
|
||||
.sp
|
||||
.LP
|
||||
In addition to the standard native properties, \fBZFS\fR supports arbitrary
|
||||
user properties. User properties have no effect on \fBZFS\fR behavior, but
|
||||
@ -1598,7 +1589,6 @@ to clear a user property . If the property is not defined in any parent
|
||||
dataset, it is removed entirely. Property values are limited to 1024
|
||||
characters.
|
||||
.SS "ZFS Volumes as Swap or Dump Devices"
|
||||
.sp
|
||||
.LP
|
||||
During an initial installation a swap device and dump device are created on
|
||||
\fBZFS\fR volumes in the \fBZFS\fR root pool. By default, the swap area size is
|
||||
@ -1614,7 +1604,6 @@ installed or upgraded, use the \fBswap\fR(1M) and \fBdumpadm\fR(1M) commands.
|
||||
If you need to change the size of your swap area or dump device, see the
|
||||
\fISolaris ZFS Administration Guide\fR.
|
||||
.SH SUBCOMMANDS
|
||||
.sp
|
||||
.LP
|
||||
All subcommands that modify state are logged persistently to the pool in their
|
||||
original form.
|
||||
@ -2117,7 +2106,7 @@ only dataset that can be renamed recursively.
|
||||
.sp
|
||||
.ne 2
|
||||
.na
|
||||
\fB\fBzfs\fR \fBlist\fR [\fB-r\fR|\fB-d\fR \fIdepth\fR] [\fB-H\fR] [\fB-o\fR
|
||||
\fB\fBzfs\fR \fBlist\fR [\fB-r\fR|\fB-d\fR \fIdepth\fR] [\fB-Hp\fR] [\fB-o\fR
|
||||
\fIproperty\fR[,\fIproperty\fR]...] [ \fB-t\fR \fItype\fR[,\fItype\fR]...] [ \fB-s\fR
|
||||
\fIproperty\fR ]... [ \fB-S\fR \fIproperty\fR ]...
|
||||
[\fIfilesystem\fR|\fIvolume\fR|\fIsnapshot\fR]...\fR
|
||||
@ -2141,6 +2130,16 @@ Used for scripting mode. Do not print headers and separate fields by a single
|
||||
tab instead of arbitrary white space.
|
||||
.RE
|
||||
|
||||
.sp
|
||||
.ne 2
|
||||
.na
|
||||
\fB\fB-p\fR\fR
|
||||
.ad
|
||||
.sp .6
|
||||
.RS 4n
|
||||
Display numbers in parsable (exact) values.
|
||||
.RE
|
||||
|
||||
.sp
|
||||
.ne 2
|
||||
.na
|
||||
@ -2380,7 +2379,7 @@ is all sources.
|
||||
.ad
|
||||
.sp .6
|
||||
.RS 4n
|
||||
Display numbers in parseable (exact) values.
|
||||
Display numbers in parsable (exact) values.
|
||||
.RE
|
||||
|
||||
.RE
|
||||
@ -3392,7 +3391,7 @@ F Regular file
|
||||
.ad
|
||||
.sp .6
|
||||
.RS 4n
|
||||
Give more parseable tab-separated output, without header lines and without arrows.
|
||||
Give more parsable tab-separated output, without header lines and without arrows.
|
||||
.RE
|
||||
.sp
|
||||
.ne 2
|
||||
@ -3953,7 +3952,6 @@ M F /tank/test/modified
|
||||
.sp
|
||||
|
||||
.SH EXIT STATUS
|
||||
.sp
|
||||
.LP
|
||||
The following exit values are returned:
|
||||
.sp
|
||||
@ -3987,7 +3985,6 @@ Invalid command line options were specified.
|
||||
.RE
|
||||
|
||||
.SH ATTRIBUTES
|
||||
.sp
|
||||
.LP
|
||||
See \fBattributes\fR(5) for descriptions of the following attributes:
|
||||
.sp
|
||||
@ -4003,7 +4000,6 @@ Interface Stability Committed
|
||||
.TE
|
||||
|
||||
.SH SEE ALSO
|
||||
.sp
|
||||
.LP
|
||||
\fBssh\fR(1), \fBiscsitadm\fR(1M), \fBmount\fR(1M), \fBshare\fR(1M),
|
||||
\fBsharemgr\fR(1M), \fBunshare\fR(1M), \fBzonecfg\fR(1M), \fBzpool\fR(1M),
|
||||
|
Loading…
Reference in New Issue
Block a user