Submits an NVMe Get Feature admin command and returns the applicable results\&. This may be the feature\(cqs value, or may also include a feature structure if the feature requires it (ex: LBA Range Type)\&.
.sp
The <device> parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)\&.
.sp
On success, the returned feature\(cqs structure (if applicable) may be returned in one of several ways depending on the option flags; the structure may parsed by the program and printed in a readable format if it is a known structure, displayed in hex, or the raw buffer may be printed to stdout for another program to parse\&.
.SH"OPTIONS"
.PP
\-n <nsid>, \-\-namespace\-id=<nsid>
.RS4
Retrieve the feature for the given nsid\&. This is optional and most features do not use this value\&.
.RE
.PP
\-f <fid>, \-\-feature\-id=<fid>
.RS4
The feature id to send with the command\&. Value provided should be in hex\&.
.RE
.PP
\-s <select>, \-\-sel=<select>
.RS4
Select (SEL): This field specifies which value of the attributes to return in the provided data:
Retrieves the feature for Number of Queues, or feature id 7:
.sp
.ifn\{\
.RS4
.\}
.nf
# nvme get\-feature /dev/nvme0 \-f 7
.fi
.ifn\{\
.RE
.\}
.RE
.sp
.RS4
.ien\{\
\h'-04'\(bu\h'+03'\c
.\}
.el\{\
.sp-1
.IP\(bu2.3
.\}
The following retrieves the feature for the LBA Range Type, which implicitly requires a buffer and will be printed to the screen in human readable format:
.sp
.ifn\{\
.RS4
.\}
.nf
# nvme get\-feature /dev/nvme0 \-f 3
.fi
.ifn\{\
.RE
.\}
.RE
.sp
.RS4
.ien\{\
\h'-04'\(bu\h'+03'\c
.\}
.el\{\
.sp-1
.IP\(bu2.3
.\}
Retrieves the feature for the some vendor specific feature and specifically requesting a buffer be allocate for this feature, which will be displayed to the user in as a hex dump: