Server IP : 51.89.169.208 / Your IP : 216.73.216.211 Web Server : Apache System : Linux ns3209505.ip-198-244-202.eu 4.18.0-553.27.1.el8_10.x86_64 #1 SMP Tue Nov 5 04:50:16 EST 2024 x86_64 User : yellowleaf ( 1019) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/thread-self/root/usr/share/zsh/5.5.1/functions/ |
Upload File : |
#compdef chown chgrp gchown=chown gchgrp=chgrp zf_chown=chown zf_chgrp=chgrp local curcontext="$curcontext" state line expl ret=1 local suf usr grp req deref pattern arg args if _pick_variant gnu=Free\ Soft unix --version; then args=( '(-c --changes -v --verbose)'{-c,--changes}'[report each change made]' '(-c --changes -v --verbose)'{-v,--verbose}'[output info for every file processed]' '(-h --no-dereference)--dereference[dereference symlinks]' '(-h --no-dereference --dereference)'{-h,--no-dereference}'[operate on symlinks themselves]' '(-f --silent --quiet)'{-f,--silent,--quiet}"[don't report errors]" '--preserve-root[fail to operate recursively on /]' '--reference=[copy ownership of specified file]:file:_files' '(-R --recursive)'{-R,--recursive}'[change files and directories recursively]' '(-H -L -P)-L[follow all symlinks]' '(-H -L -P)-H[follow symlinks on the command line]' '(-H -L -P)-P[do not follow symlinks (default)]' '(- : *)--help[display help information]' '(- : *)--version[display version information]' ) [[ $service = chown ]] && args+=( '--from=[restrict changes to files by current ownership]: :->owner' ) else args=( "-h[operate on symlinks them self]" '-R[change files and directories recursively]' '(-H -L -P)-L[follow all symlinks]' '(-H -L -P)-H[follow symlinks on the command line]' '(-H -L -P)-P[do not follow symlinks (default)]' ) for pattern arg in \ '(dragonfly|freebsd)*' "-x[don't traverse file systems]" \ '(darwin|dragonfly|(free|net)bsd|solaris)*' "-f[don't report errors]" \ '(darwin|dragonfly|(free|net)bsd)*' '-v[output info for every file processed]' \ 'solaris2.<11->' '-s[owner and/or group are Windows SID strings]' do [[ $OSTYPE = $~pattern ]] && args+=( $arg ) done fi (( $+words[(r)--reference*] )) || args+=( '(--reference)1: :->owner' ) _arguments -C -s "$args[@]" '*:files:->files' && ret=0 case $state in owner) if [[ $service = chgrp ]] || compset -P '*[:.]'; then if (( EGID && $+commands[groups] && ! $+_comp_priv_prefix )); then # except for sudo _wanted groups expl 'group' compadd -- $(groups) && return 0 fi _groups && ret=0 else if compset -S '[.:]*'; then suf=() elif [[ $OSTYPE = irix* ]]; then suf=( -qS '.' ) else suf=( -qS ':' ) fi _users "$suf[@]" && ret=0 fi ;; files) (( $+opt_args[-h] || $+opt_args[--no-dereference] )) || deref="-" if (( $+opt_args[--reference] )); then zmodload -F zsh/stat b:zstat 2>/dev/null usr=$(zstat +uid $opt_args[--reference]) grp=$(zstat +gid $opt_args[--reference]) _wanted files expl file _files -g "*($deref^u$usr,$deref^g$grp)" && ret=0 return ret fi if [[ $service = chgrp ]]; then grp=${line[1]} else usr=${line[1]%%[.:]*} usr=${${(M)usr:#[0-9]#}:-${userdirs[$usr]:+.$usr.}} grp=${${(M)line[1]%%[.:]*}#?} fi [[ -n $grp ]] && grp="${${(M)grp:#[0-9]#}:-.$grp.}" req=( ${usr:+\^u$usr} ${grp:+\^g$grp} ) (( EUID )) && req=( u$EUID$^req ) req=( $deref$^req ) req="*(${(j:,:)req})" ( : $~req ) 2> /dev/null || req='*' _wanted files expl file _files -g "$req" && ret=0 ;; esac return ret