X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvemerge;h=36321ab99a2f72f96d09cc52bf2c6885387dbe89;hb=30d1f69230aa7c9b0d417e069dd8f5f13309730f;hp=97f8e308d10590bd37fb5fbc6266088e3ac292e4;hpb=3597c75084e7f41d64bc251e20ef5d33bb09ea06;p=util-vserver.git diff --git a/scripts/vemerge b/scripts/vemerge index 97f8e30..36321ab 100755 --- a/scripts/vemerge +++ b/scripts/vemerge @@ -46,7 +46,7 @@ the GNU General Public License. This program has absolutely no warranty." exit 0 } -tmp=$(getopt -o +q --long help,version,debug,quiet,all -n "$0" -- "$@") || exit 1 +tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1 eval set -- "$tmp" declare -a send_through vsomething_opts @@ -57,9 +57,18 @@ while true; do (--version) showVersion ;; (--debug) send_through=( "${send_through[@]}" "$1" ); set -x;; (--quiet|-q) send_through=( "${send_through[@]}" "$1" );; - (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );; + (--) test ${#vsomething_opts[@]} -eq 0 && shift; break;; + (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );; + esac + shift +done + +declare -a vserver_names + +while [ $# -gt 0 ]; do + case "$1" in (--) shift; break;; - (*) echo $"vemerge: internal error; arg=='$1'" >&2; exit 1;; + (*) vserver_names=( "${vserver_names[@]}" "$1" );; esac shift done @@ -68,6 +77,4 @@ VSOMETHING_TITLE=vemerge VSOMETHING_PKGMGMT=1 export VSOMETHING_TITLE VSOMETHING_PKGMGMT - -test ${#vsomething_opts[@]} -eq 0 || vsomething_opts=( "${vsomething_opts[@]}" -- ) -exec $_VSOMETHING "${send_through[@]}" emerge "${vsomething_opts[@]}" "$@" +exec $_VSOMETHING "${send_through[@]}" emerge "${vsomething_opts[@]}" "${vserver_names[@]}" -- "$@"