I often find downloads will not resume when I use any of the common browsers for the downloading. They are meant to resume, but it just fails in many instances. Today I figured out how to resume pretty much any download that fails part way through, is incomplete, and to pick up where it left off.

Let’s say we are downloading a file called big-arse-file.zip and we’re getting it from website.com/files/big-ones/big-arse-file-zip

  • If you used Safari for the download, it will great a file in your Downloads folder called thefilename.zip.download (notice the .download file extension Safari has added)
  • If you use Firefox it will create a file called big-arse-file.zip.part (notice the .part file extension Firefox has added)
  • If you use Chrome it will not add an extension to the file

Special Instructions for Safari download resume

Apple, as usual, has their own “special” way of doing things. Rather than just tacking a new extension onto the file name, it actually creates a folder. In that folded is the original file (big-arse-file.zip) and a info.plist file. This plist file contains info that is meant to help Safari resume the download. But in some circumstances the info in there is not complete or correct. This might happen if your browser crashes during a download, etc. Rather than trying to fiddle around with the plist file (which is an option, but too much messing around for my liking) we can just get big-arse-file.zip out of the special folder and into the Downloads folder where you can do something with it.

To do this, Right-clight / two-finger click /  Control-click on big-arse-file.zip.download to bring up the file context menu (how you do this depends on how you’ve got your OS set up, but Control-click should always work).

Now, select Show Package Contents.

You’ll now see a new finder window (or tab, if you use TotalFinder – which I highly recommend) with the plist file and the zip file.

Drag the zip file into the Downloads folder

Follow the instructions below for Using CURL to resume the download

Instructions for most other browsers

If the browser you use adds a filename extension to incomplete downloads, just edit the file name and remove that extension. In this hypothetical example, the file should end up being big-arse-file.zip

Using CURL to resume broken downloads

Curl is a great tool for download files. It comes with the UNIX operating system which is sitting in behind the pretty interface of OS X.

Open Terminal application. You’ll find it in your Applications folder. Easiest way is to activate Spotlight quick search (usually just Command-SPACE) and then type in Terminal. Hit return when it’s found, and that’s it.

In Terminal type in:   cd Downloads   [hit Return key]

Then type in:

Press the Return key.

You should see something like this in the terminal window:

To interrupt a download and resume it later, press Control/C. When you wish to resume, press up arrow once to recall the command, and then press enter to start it again. The download will resume from where you interrupted it.

Notes

  • Instead of “Jonathan-MBP” you’ll see the name of your computer.
  • Instead of “jonathan$” you’ll see your username with a $ sign after it.
  • The “Total” shown will not be the same as the complete file size. It will just be the amount that is remaining for downloading. So if the file was 100MB and you got 85MB before it was interrupted, then “Total” will show something like “15.0M”.
  • The % (just before Total) will start out at 0 (zero) not at whatever percentage of the file you already downloaded. So if you downloaded 85% of it previously, it will not sure 85%.
  • You can take a look in the Downloads folder in Finder, and make sure everything looks okay. For instance, that the file is increasing in size, and that a new file with a similar name has not been created. If all the above steps were done correctly, there should not be a new file created. Just the old file will start getting bigger.

Using WGET to resume broken downloads

Another option is to use the command WGET.

As per the above instructions, start a Terminal, then type

Where ${URL} is the link.

To interrupt a download and resume it later, press Control/C. When you wish to resume, press up arrow once to recall the command, and then press enter to start it again. The download will resume from where you interrupted it.