So this certainly isn't the hardest to read, but i actually use it from time to time...
@ARGV[0]=~s/(\w{2})/sprintf("%02x",eval('0b'.reverse(sprintf("%08b",he +x($1)))))/egi; print @ARGV[0];

Replies are listed 'Best First'.
Re: my first
by jdalbec (Deacon) on Nov 16, 2007 at 01:11 UTC
    print unpack 'H*', pack 'B*', unpack 'b*', pack 'H*', shift
    The B and b may be switched.