HEX
Server: Apache
System: Linux dinesh8189 5.15.98-grsec-sharedvalley-2.lc.el8.x86_64 #1 SMP Thu Mar 9 09:07:30 -03 2023 x86_64
User: cgmgerenciamento1 (814285)
PHP: 8.1.26
Disabled: apache_child_terminate,dl,escapeshellarg,escapeshellcmd,exec,link,mail,openlog,passthru,pcntl_alarm,pcntl_exec,pcntl_fork,pcntl_get_last_error,pcntl_getpriority,pcntl_setpriority,pcntl_signal,pcntl_signal_dispatch,pcntl_sigprocmask,pcntl_sigtimedwait,pcntl_sigwaitinfo,pcntl_strerror,pcntl_wait,pcntl_waitpid,pcntl_wexitstatus,pcntl_wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,php_check_syntax,php_strip_whitespace,popen,proc_close,proc_open,shell_exec,symlink,system
Upload Files
File: //etc/bash_completion.d/scl
# main function bound to scl command
_scl()
{
    local cur actions cur_action collections
    COMPREPLY=()

    cur="${COMP_WORDS[COMP_CWORD]}"
    actions="enable run load unload list-collections list-packages man register deregister --help"

    collections=`scl list-collections`

    # Complete action names
    if ((COMP_CWORD == 1)); then
        COMPREPLY=( $(compgen -W "${actions}" -- ${cur}) )
        return 0;
    fi

    # If there is command or separator in arguments then stop completition
    if ((COMP_CWORD > 3)); then
        for word in "${COMP_WORDS[@]}"; do
            if [[ ${word} == \'* || ${word} == \"* || ${word} == "--" ]] ; then
                return 0
            fi
        done
    fi

    # Complete one or none action argument
    if ((COMP_CWORD >= 2)); then
        cur_action="${COMP_WORDS[1]}"

        case "$cur_action" in
            # No argument
            list-collections|list-enabled|--help)
                return 0
            ;;

            # Argument is collection name
            list-packages|man)
                if ((COMP_CWORD == 2)); then
                    COMPREPLY=( $(compgen -W  "$collections" -- ${cur}) )
                fi
                return 0
            ;;

            # Argument is collection name or "-f" or "--force"
            deregister)
                if ((COMP_CWORD == 2)); then
                    COMPREPLY=( $(compgen -W  "$collections --force -f" -- ${cur}))
                fi
                if [ "$COMP_CWORD" -eq 3 -a  "(" "${COMP_WORDS[2]}" == "--force" -o "${COMP_WORDS[2]}" == "-f" ")" ]; then
                    COMPREPLY=( $(compgen -W  "$collections" -- ${cur}))
                fi
                return 0
            ;;

            # Argument is directory
            register)
                compopt -o plusdirs
                if ((COMP_CWORD == 2)); then
                    COMPREPLY=( $(compgen -A  directory -- ${cur}) )
                fi
                return 0
            ;;

            # Arguments are collections or "-x" or "--exec"
            run|enable)
                if ((COMP_CWORD == 2)); then
                    COMPREPLY=( $(compgen -W  "$collections -x --exec" -- ${cur}) )
                else
                    COMPREPLY=( $(compgen -W  "$collections" -- ${cur}) )
                fi
                return 0
            ;;

            # Arguments are collections 
            load|unload)
                COMPREPLY=( $(compgen -W  "$collections" -- ${cur}) )
                return 0
            ;;
            *)
            ;;
        esac
    fi

}

# bind the scl command to the _scl function for completion
complete -F _scl scl