F*EX use case: Internet clipboard

<TV-commercial>

  Michael: Marianne, do you know 'xx' from the house of F*EX?
  Marianne: No, Michael, what can we do with it?
  Michael: Transfering files even faster and smartly as with fexsend!
  Marianne: NO, Michael, is it possible!? This is UNBELIEVABLE!!

</TV-commercial>

I have n accounts on y hosts, which have different names and rights, including administrative accounts like root or webmaster. With them I want to swap files "on the fly". Mostly I cannot use scp or sendfile because of router firewalls and port restrictions, on which I do not have influence. Even worse it gets with DHCP.

With fexsend for UNIX there is already a quite good solution, but not that fast and smart.
Within fexsend comes xx (as symlink). This provides an extremly easy file transfer, an internet clipboard!

On Windows you can use fexit, to access the F*EX clipboard and exchange files between Windows or UNIX hosts.
Alternativly you can install Cygwin with Perl to use fexsend.

Example 1

  fex@fex:~/htdocs/download: xx schwuppdiwupp*
  making tar transfer file /home/fex/.fex/tmp/STDFEX :
  schwuppdiwupp
  schwuppdiwupp.exe
  schwuppdiwupp.pl
  /home/fex/.fex/tmp/STDFEX: 4 MB in 1 s with 4671 kB/s
(switching account)

  framstag@moep:/export/tmp: xx
  Files in transfer-container:
  
  -rwxr-xr-x fex/www-data 3665199 2008-09-22 16:49 schwuppdiwupp
  -rwx------ fex/www-data 3808769 2008-11-04 17:42 schwuppdiwupp.exe
  -rwxr-xr-x fex/www-data   41856 2008-12-05 18:35 schwuppdiwupp.pl
  
  Extract these files? y
  schwuppdiwupp
  schwuppdiwupp.exe
  schwuppdiwupp.pl

Example 2

  framstag@fex:/export/tmp: xx p1140397_divx3.avi
  making tar transfer file /home/framstag/.fex/tmp/STDFEX:
  p1140397_divx3.avi
  /home/framstag/.fex/tmp/STDFEX: 488 MB in 53 s with 9129 kB/s
(switching account)

  framstag@moep:/export/tmp: xx
  Files in transfer-container:
  
  -rw-r--r-- framstag/user 488665199 2011-09-02 20:49 p1140397_divx3.avi
  
  Extract these files? y
  p1140397_divx3.avi
(switching account)

  root@tandem:/home/httpd/virtual/tandem-fahren.de/htdocs/tmp: xx --
  p1140397_divx3.avi

Example for STDIN/STDOUT

  framstag@tandem:/home/httpd/virtual/tandem-fahren.de/htdocs/tmp: ls -l | xx
  /home/framstag/.fex/tmp/STDFEX: 0 kB in 1 s with 0 kB/s
(switching account)

  fex@fex:~: xx
  total 9552
  -rwxr-xr-x 1 framstag tandem  211893 2008-12-14 16:56 p1140056.jpg
  -rw-r--r-- 1 framstag tandem 9529794 2009-01-12 18:41 p1140397_divx3.avi
  -rwxr-xr-x 1 framstag tandem    2946 2008-08-07 11:12 quotefix
  -rw-r--r-- 1 framstag tandem    7509 2008-10-06 11:39 tmp.gif
  -rw-r--r-- 1 framstag tandem      48 2008-10-06 11:39 xx.html

But what if one does not have fexsend initialized on the receiving side (no F*EX ID)?

Then simply copy (with mouse) the output from fexsend -I from your local to the remote shell account! Example:

  framstag@tandem:~: fexsend -I
  export FEXID=U2V0ZWMgQXN0cm9ub215Cg==;history -d $((HISTCMD-1))

Conclusion

With xx one has a network wide clipboard for files or STDIN/STDOUT between different accounts on different hosts, even behind firewalls and NAT networks!

And MORE!

If you want an extended clipboard with versioning and exchange with other users then see push&pull.


framstag@rus.uni-stuttgart.de