This is an inconsistency more than anything else, brought to my attention because I use a wrapper around rpm to clean out LD_* vars and to set a local rc file, if present. That is, I do: ---8<-snip---8<-snip---8<-snip---8<-snip---8<-snip---8<-snip---8<--- #!/bin/sh rpm=/bin/rpm rcfile= [[ $(id -u) != 0 ]] && { [ -f ~/.rpmrc ] && rcfile="--rcfile ~/.rpmrc" } unset LD_PRELOAD unset LD_LIBRARY_PATH exec $rpm $rcfile ${1+"$@"} ---8<-snip---8<-snip---8<-snip---8<-snip---8<-snip---8<-snip---8<--- I the case whre I have the local rc file, "~/bin/rpm --querytags" results in: /bin/rpm --rcfile ~/.rpmrc --querytags which I will maintain is *completely* benign, harmless, wouldn't hurt a kitten, etc, etc. However, /bin/rpm itself doesn't like it, complaining "rpm: unexpected arguments to --querytags". [strace shows that the popt expansion of --querytags never happens; the error is spat out before an attempt to exec "/usr/lib/rpm/rpmq --querytag" happens.] although i have not exhaustively tested, this looks from the man page to be the *only* option that rpm treats as "this one, and not anything else, or you'll be sorry". i can't see the harm in relaxing the checking a bit; an rcfile argument should be allowed pretty much anywhere, i would think.
Yup. Workaround by giving --querytags w/o other options.