Welcome To The Official Homepage Of



pftp means Port-File-Transfer-Program not to muddle up with standard FTP which is quite different. pftp is released under the terms of the GNU General Public License. It transfers files, directories and data from standard input to any host on the net running pftp.
When I started writing pftp in late summer 1996 I was confronted with transfering a mass of files by lame ftp or one of its derivates. This was the crucial situation I had to make a decision: Should I take on creating a brand new program which facilitates the tasks I needed? Not really, but I had to. ;^)
The technical history is found in Changes.


I developed many really necessary features during the past three years. Some of these are:
  • Send and receive directories recursively
  • Send and receive standard input and output
  • Filter your connection (usually by pgp or gzip/gunzip)
  • Correct timing (in contrast to ftp)
  • Set aliases for host and user names
  • Reduce output at a minimum for shell scripts
  • Set net buffer size and bandwidth (necessary for connections with low bandwidth)
  • May be used as a daemon on any port or be started by the internet daemon
    Both include a password checking mechanism
  • You may also send files and directories including a message file to other people on the net
    Of course you can browse interactively through your incoming files and directories
  • You can also send and receive unicasted, broadcasted, and multicasted UDP datagrams.
    Since this is unreliable it is just meant for sending and receiving AUDIO and VIDEO streams.
    On Linux you may interactively change the bandwidth, drop datagrams periodically,
    and stop and continue sending datagrams. pftp can determine the avarage bitrate of
    MPEG audio streams at the beginning of each file.
  • A special option (`-G') optimizes buffers for data transfer over Gigabit Ethernet.
  • It is the fastest available data transfer program I have ever used :^)
pftp is fit for Gigabit Ethernet

pftp has native IPv6 support

All of the above mentioned features are supported for both protocols IPv4 and IPv6. To see some examples on how to use pftp you may read the comprehensive manual page. There is also a list of frequently asked questions available online.

Supported Plattforms

By now pftp runs on AIX, FreeBSD, HP-UX, IRIX, IRIX64, Linux, NEXTSTEP, OSF1, OpenBSD, SunOS, Solaris, ULTRIX, and unicos. If you like there is also a version for NT4.0 .

Latest Release

You can download the latest version of pftp here (pftp-1.1.6.tar.gz 110147 bytes) or from metalab.unc.edu.


Well, pftp is just console based but nevertheless here are some older but nice screenshots: Here 's one of the simple pftp file and directory manager. This one shows the host name list. Wow, here's pftp in full action getting a directory recursively filtered by gzip/gunzip. Finally, let's have a look at pftp's internal pager.


I want to thank all people in the world writing free UNIX software! My special thanks goes to the people contributing to pftp! Please see the CREDITS file for their names and the kind of their contribution!


This program is dedicated to Heather O'Rourke.


Setting the net buffer size to zero may crash older systems. So you should use a buffer size of zero for test purposes only. Most newer systems set a buffer size of zero to one by default.

Author And Maintainer

My name is Ben Schluricke. I study chemistry at the Technische Universität Berlin.

If you find any bug or have any suggestion, please drop me an e-mail!