mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-06-17 09:08:04 +02:00
34 lines
1.5 KiB
Text
34 lines
1.5 KiB
Text
#compdef uniq guniq
|
|
|
|
local args
|
|
|
|
args=(
|
|
'(-c --count)'{-c,--count}'[prefix lines by the number of occurrences]'
|
|
'(-d --repeated)'{-d,--repeated}'[only print duplicate lines]'
|
|
'(--all-repeated)-D-[print all duplicate lines]'
|
|
'(-D)--all-repeated=-[print all duplicate lines]::delimit method [none]:(none prepend separate)'
|
|
'(-f --skip-fields)'{-f,--skip-fields=}'[avoid comparing initial fields]:number of fields'
|
|
'--group=-[show all items]::group separation [separate]:(separate prepend append both)'
|
|
'(-i --ignore-case)'{-i,--ignore-case}'[ignore differences in case when comparing]'
|
|
'(-s --skip-chars)'{-s,--skip-chars=}'[avoid comparing initial characters]:number of characters'
|
|
'(-t --separator)'{-t,--separator=}'[specify field delimiter]:separator'
|
|
'(-u --unique)'{-u,--unique}'[only print unique lines]'
|
|
'(-w --check-chars)'{-w,--check-chars=}'[specify maximum number of characters to compare]:characters'
|
|
'(-W --check-fields)'{-W,--check-fields=}'[specify maximum number of fields to compare]:fields'
|
|
'(-z --zero-terminated)'{-z,--zero-terminated}'[delimit lines with null character, not newline]'
|
|
'(- *)--help[display help information]'
|
|
'(- *)--version[display version information]'
|
|
)
|
|
|
|
if ! _pick_variant gnu=Free\ Soft unix --version; then
|
|
local optchars="cdufs"
|
|
if [[ "$OSTYPE" == (darwin|dragonfly|freebsd|openbsd)* ]]; then
|
|
optchars+=i
|
|
fi
|
|
[[ $OSTYPE = (darwin|freebsd)* ]] && optchars+=D
|
|
args=( ${(M)args:#(|\*)(|\(*\))-[$optchars]*} )
|
|
fi
|
|
|
|
_arguments "$args[@]" \
|
|
'1::input file:_files' \
|
|
'2::output file:_files'
|