fish-shell/share/functions/__fish_is_zfs_feature_enabled.fish
2017-12-21 16:39:06 +01:00

17 lines
723 B
Fish

function __fish_is_zfs_feature_enabled -a feature target -d "Returns 0 if the given ZFS feature is available or enabled for the given full-path target (zpool or dataset), or any target if none given"
set -l pool (string replace -r '/.*' '' -- $target)
set -l feature_name ""
if test -z "$pool"
set feature_name (zpool get all -H | string match -r "\s$feature\s")
else
set feature_name (zpool get all -H $pool | string match -r "$pool\s$feature\s")
end
if test $status -ne 0 # No such feature
return 1
end
echo $feature_name | read -l _ _ state _
set -l state (echo $feature_name | cut -f3)
string match -qr '(active|enabled)' -- $state
return $status
end