1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
# bash completion for cpio -*- shell-script -*-
_comp_cmd_cpio()
{
local cur prev words cword was_split comp_args
_comp_initialize -s -n : -- "$@" || return
# --name value style option
local noargopts='!(-*|*[HEFIR]*)'
# shellcheck disable=SC2254
case $prev in
--format | -${noargopts}H)
_comp_compgen -- -W 'bin odc newc crc tar ustar hpbin hpodc'
return
;;
--file | --pattern-file | -${noargopts}[EFI])
_comp_compgen_filedir
return
;;
--owner | -${noargopts}R)
_comp_compgen_usergroups
return
;;
--rsh-command)
_comp_compgen_commands
return
;;
esac
[[ $was_split ]] && return
if ((cword == 1)); then
_comp_compgen -- -W '-o --create -i --extract -p --pass-through -?
--help --license --usage --version'
else
case ${words[1]} in
-o | --create)
if [[ $cur == -* ]]; then
_comp_compgen -- -W '-0 -a -c -v -A -B -L -V -C -H -M -O -F
--file --format --message --null --reset-access-time
--verbose --dot --append --block-size --dereference
--io-size --quiet --force-local --rsh-command --help
--version'
fi
;;
-i | --extract)
if [[ $cur == -* ]]; then
_comp_compgen -- -W '-b -c -d -f -m -n -r -t -s -u -v -B -S
-V -C -E -H -M -R -I -F --file --make-directories
--nonmatching --preserve-modification-time
--numeric-uid-gid --rename --list --swap-bytes --swap
--dot --unconditional --verbose --block-size
--swap-halfwords --io-size --pattern-file --format
--owner --no-preserve-owner --message --force-local
--no-absolute-filenames --sparse --only-verify-crc
--quiet --rsh-command --help --to-stdout --version'
fi
;;
-p* | --pass-through)
if [[ $cur == -* ]]; then
_comp_compgen -- -W '-0 -a -d -l -m -u -v -L -V -R --null
--reset-access-time --make-directories --link --quiet
--preserve-modification-time --unconditional --verbose
--dot --dereference --owner --no-preserve-owner
--sparse --help --version'
else
_comp_compgen_filedir -d
fi
;;
esac
fi
} &&
complete -F _comp_cmd_cpio cpio
# ex: filetype=sh
|