A long time ago I remember thinking it would be cool if you could use arbitrary URLs on the command line to refer to files, such as "cat http://google.com". I wrote something to do it (using wget I think), but for some reason I never got it to work right with LD_PRELOAD.
Well it turns out that gnome's vfs (virtual file system) has a set of command line tools to do things just like this. On ubuntu I installed the libgnomevfs2-bin package, and it gave me:
/usr/bin/gnomevfs-cat
/usr/bin/gnomevfs-copy
/usr/bin/gnomevfs-info
/usr/bin/gnomevfs-ls
/usr/bin/gnomevfs-monitor
/usr/bin/gnomevfs-mkdir
/usr/bin/gnomevfs-mv
/usr/bin/gnomevfs-rm
/usr/bin/gnomevfs-df
These tools generally work the same as cat, cp, ls, mv, rm, etc -- except that they can use arbitrary URLs as filenames. Such as:
gnomevfs-cp sftp://foo@bar.com:somefile.txt ftp://bob:blah@poop:/tmp/
This is pretty cool. The only thing that sucks is that they are pretty crude and take few or no options other than the filenames.
Also I found that if you use the sftp protocol, you need to use key auth. If password auth is needed, it just fails.