#!/bin/bash #----------------------------------------------------------------------------------------------------------------------------------- # # Rx3 IP Host Update Bash Completion # # Copyright (C) 2025-2026 Arnaud G. GIBERT # mailto:arnaud@rx3.net # # This is free software: you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published # by the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; If not, see # . # #----------------------------------------------------------------------------------------------------------------------------------- #----------------------------------------------------------------------------------------------------------------------------------- # IP Host Update Completion #----------------------------------------------------------------------------------------------------------------------------------- _ip_host_update_completion() { local cur="${COMP_WORDS[COMP_CWORD]}" local prev="${COMP_WORDS[COMP_CWORD-1]}" local opts="-h --help -V --version -v --verbose" local pos=0 local i COMPREPLY=() # Count non-option positional arguments already provided for (( i=1; i/dev/null | grep -oP 'zone\s+\"\K[^\"]+' | sort -u)" -- "${cur}") ) ;; 2) COMPREPLY=() ;; 3) COMPREPLY=( $(compgen -W "60 300 600 3600 86400" -- "${cur}") ) ;; *) COMPREPLY=() ;; esac return 0 } complete -o filenames -F _ip_host_update_completion ip_host_update