mirror of
https://github.com/eliasstepanik/ark-ac-server-tools.git
synced 2026-01-12 02:48:27 +00:00
34 lines
1.2 KiB
Plaintext
34 lines
1.2 KiB
Plaintext
# a bash_completion for arkmanager with server names
|
|
# ARK: survival evolved manager
|
|
#
|
|
# Original author: AnEmortalKid
|
|
|
|
_arkmanager()
|
|
{
|
|
local cur prev opts home_instances etc_instances
|
|
COMPREPLY=()
|
|
cur="${COMP_WORDS[COMP_CWORD]}"
|
|
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
|
|
|
# retrieve the ones in /etc/arkmanager/instances first
|
|
etc_instances=$(for f in `ls -1 /etc/arkmanager/instances/*.cfg`; do if [ -f "${f}" ]; then instancename="${f##*/}"; echo "@${instancename%.cfg}"; fi done)
|
|
|
|
# check that ${HOME}/.config/arkmanager/instances exists
|
|
if [ -d "${HOME}/.config/arkmanager/instances/" ] ; then
|
|
# check that it also isn't empty if it exists
|
|
if [ "$(ls -A ${HOME}/.config/arkmanager/instances/)" ] ; then
|
|
home_instances=$(for f in `ls -1 ${HOME}/.config/arkmanager/instances/*.cfg`; do if [ -f "${f}" ]; then instancename="${f##*/}"; echo "@${instancename%.cfg}"; fi done)
|
|
fi
|
|
fi
|
|
|
|
# append both results together for the completion
|
|
all_instances="@all ${etc_instances} ${home_instances}"
|
|
|
|
if [[ ${cur} == @* ]] ; then
|
|
COMPREPLY=( $(compgen -W "${all_instances}" -- ${cur}) )
|
|
return 0
|
|
fi
|
|
}
|
|
complete -F _arkmanager arkmanager
|
|
|