A file is being sequentially downloaded by wget
.
If I start unpacking it with cat myfile.tar.bz2 | tar -xj
, it may unpack correctly or fail with "Unexpected EOF", depending on what is faster.
How to "cat and follow" a file, i.e. output content of the file to stdout, but don't exit on EOF, instead keep subsribed to that file and continue outputting new portions of the data, exiting only if the file is closed by writer and not re-opened within N seconds.
I've created a script cat_and_follow based on @arielCo's answer that also terminates the tail
when the file is not being opened for writing anymore.
Best Answer
I tested it on Ubuntu with the LibreOffice source tarball while
wget
was downloading it:It also works on Solaris 10, RHEL3, AIX 5 and Busybox 1.22.1 in my Android phone (use
tail +1 -f file
with Busybox).