Do you want to extract a file from an rpm package, but don't want to install the whole rpm to get it? Well here is how you do it. I am going to grab htpasswd from the httpd rpm
To find out where the file will get installed if you install the whole package run this command
rpm -qlp httpd-2.0.40-21.i386.rpm | grep htpasswd
Now that i have /usr/bin/htpasswd as the location I can use rpm2cpio to grab just that file.
rpm2cpio httpd-2.0.40-21.i386.rpm | cpio -ivd ./usr/bin/htpasswd
That should place a file in ./usr/bin/htpasswd Notice I have a . (period) in front. It will create the usr/bin and then place htpasswd in that dir in whatever dir you are in. So in my example i was in /tmp so all the full path to htpasswd is
From there i could move it to /usr/bin and delete /tmp/usr and also the rpm.
another one from J to the Y
rpm2cpio ../zoneminder-1.22.3-14.fc9.x86_64.rpm | cpio -ivd *