CasperSecurity

Current Path : /usr/share/bash-completion/completions/
Upload File :
Current File : //usr/share/bash-completion/completions/pkg-get

# pkg-get.completion completion                            -*- shell-script -*-
#
# Copyright 2006 Yann Rouillard <yann@opencsw.org>

_pkg_get_get_catalog_file()
{
    local url="$1"
    local catalog_file i conffile

    for file in /etc/opt/csw/pkg-get.conf /opt/csw/etc/pkg-get.conf /etc/pkg-get.conf; do
        if [[ -f $file ]]; then
            conffile="$file"
            break
        fi
    done
    conffile="${conffile:-/opt/csw/etc/pkg-get.conf}"

    if [[ -z $url ]]; then
        url=$(awk -F= ' $1=="url" { print $2 }' $conffile)
    fi

    catalog_file="${url##*//}"
    catalog_file="${catalog_file%%/*}"
    catalog_file="/var/pkg-get/catalog-$catalog_file"

    echo "$catalog_file"
} &&
    _pkg_get()
    {
        local cur prev file catalog_file url command
        COMPREPLY=()
        cur="${COMP_WORDS[COMP_CWORD]}"
        prev="${COMP_WORDS[COMP_CWORD - 1]}"

        if [[ ${prev} == "-s" ]]; then
            return 1
        fi

        local i=${#COMP_WORDS[*]}
        while ((i > 0)); do
            if [[ ${COMP_WORDS[--i]} == -s ]]; then
                url="${COMP_WORDS[i + 1]}"
            fi
            if [[ ${COMP_WORDS[i]} == @(-[aDdiUu]|available|describe|download|install|list|updatecatalog|upgrade) ]]; then
                command="${COMP_WORDS[i]}"
            fi
        done

        if [[ -v command ]]; then
            if [[ $command == @(-[Ddi]|describe|download|install) ]]; then
                catalog_file=$(_pkg_get_get_catalog_file "$url")
                if [[ -f $catalog_file ]]; then
                    local packages_list=$(awk ' $0 ~ /BEGIN PGP SIGNATURE/ { exit } $1 ~ /^Hash:/ || $1 ~ /^ *(-|#|$)/ { next } { print $1 }' $catalog_file)
                    COMPREPLY=($(compgen -W "${packages_list}" -- ${cur}))
                fi
            fi
            return
        fi

        if [[ ${cur} == -* ]]; then
            local opts="-c -d -D -f -i -l -s -S -u -U -v"
            COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
            return
        fi

        local commands="available describe download install list \
        updatecatalog upgrade"
        COMPREPLY=($(compgen -W "${commands}" -- ${cur}))
    } &&
        complete -F _pkg_get pkg-get

# ex: filetype=sh
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY