I found a tool called pv via a Hacker News thread. pv or pipe viewer allows you to view data as it is pulled out of a Unix pipe. This is really helpful when dealing with long running commands. I used it today to check on the progress of encrypting a large tar archive.
$ pv archive.tar.xz | gpg --sign --symmetric - > archive.tar.xz.gpg 6.51GiB 0:08:52 [6.23MiB/s] [======================> ] 70% ETA 0:03:47
While pv is running you get a progress, time elapsed, speed, a progress bar, 70% complete and an estimation of time until complete.