From 0c473c9e9c16fa3bd75b690eb12f44c44d585750 Mon Sep 17 00:00:00 2001 From: Harald Albers Date: Tue, 26 Jan 2016 10:57:38 -0800 Subject: [PATCH] Let bash completion for `docker network rm` only complete custom networks Signed-off-by: Harald Albers --- contrib/completion/bash/docker | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/contrib/completion/bash/docker b/contrib/completion/bash/docker index 99551dcd83..5d968128af 100644 --- a/contrib/completion/bash/docker +++ b/contrib/completion/bash/docker @@ -148,16 +148,20 @@ __docker_complete_containers_and_images() { COMPREPLY+=( "${containers[@]}" ) } +# Returns the names and optionally IDs of networks. +# The selection can be narrowed by an optional filter parameter, e.g. 'type=custom' __docker_networks() { + local filter="$1" # By default, only network names are completed. # Set DOCKER_COMPLETION_SHOW_NETWORK_IDS=yes to also complete network IDs. local fields='$2' [ "${DOCKER_COMPLETION_SHOW_NETWORK_IDS}" = yes ] && fields='$1,$2' - __docker_q network ls --no-trunc | awk "NR>1 {print $fields}" + __docker_q network ls --no-trunc ${filter:+-f "$filter"} | awk "NR>1 {print $fields}" + #__docker_q network ls --no-trunc | awk "NR>1 {print $fields}" } __docker_complete_networks() { - COMPREPLY=( $(compgen -W "$(__docker_networks)" -- "$cur") ) + COMPREPLY=( $(compgen -W "$(__docker_networks $@)" -- "$cur") ) } __docker_complete_network_ids() { @@ -1357,7 +1361,7 @@ _docker_network_rm() { COMPREPLY=( $( compgen -W "--help" -- "$cur" ) ) ;; *) - __docker_complete_networks + __docker_complete_networks type=custom esac }