Resuming broken downloads in OS X

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:

curl -OC - http://website.com/files/big-ones/big-arse-file.zip

Press the Return key.

You should see something like this in the terminal window:

Jonathan-MBP:Downloads jonathan$ curl -OC - http://www.website.com/files/big-ones/big-arse-file.zip
** Resuming transfer from byte position 46259985  
%  Total  %  Received % Xferd  Average Speed   Time    Time     Time   Current
                               Dload  Upload  Total   Spent     Left   Speed 
42 90.7M  42 0.01M    0     0  61007      0  0:06:31  0:06:31 --:--:-- 61340

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

wget --continue ${URL}

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.

Recent Articles

Related Stories

22 Comments

  1. Thanks Jonathan for the hint to resume broken downloads. Your tip with curl was very simple in description. I could follow them easily and with full success.

    Thanks a lot again and best regards from Dresden, Germany

  2. Second what SteffenG says – worked perfectly for me and saved me probably a lot of time of having to start the download from scratch!

    Best regards from Vancouver, Canada

  3. Amazing, easy quick fix to my very annoying ‘broken download’ problem. Thanks a million for sharing this wonderful tip – worked perfectly.

    • Thanks. I’ll try that out. I rarely use Safari though, to I find the method I’ve outlined very useful in many circumstances.

  4. @Stephen, Miljenko, T (from Poland), nakul, Karen… I am glad this worked out for you. Sorry it took me so long to acknowledge your comments. All the best… J

  5. I’m trying to download Winows.pvm (38gig) via my network from an old MacbookPro that keeps crashing to a new iMac. What Terminal instruction would I use in this case please?

    • Sorry. Just saw your comment now. For such a task I would have suggested an external drive. But I supposed you’ve well and truly figured out a solution by now. 🙂

  6. Thanks, for that great tip. This does not seem to work for websites requiring login info before downloading the file though, right? Even after I login with Safari, terminal access is not accepted…

    • Hi Eugene,
      Gratitude received.
      Regarding sites requiring user authentication… I suspect you are right that this won’t work for that. There may be a way around that, using scripts and what-not. But nothing I can recommend off-hand. There are various applications that handle download management, and they also handle authentication (typically). jdownloader is one. Folx is another (I think I got that name right). Searching online you’ll find a few of them. Macupdate.com is always a good place to start.

    • I am not sure I understand the question. It shouldn’t matter what kind of file it is. So long as the server (providing the file) supports resuming, it should be the same procedure to resume a file of any kind. Movie files, DMG files, ISO images, RAR files… whatever.

  7. Hello Jonathan. Will this be able to resume files downloaded from free web hosting sites like uploaded.net, nitroflare, rapidgator? If not than will u kindly help with resuming files from such free web hosting sites.

    • Those sites don’t typically support resuming, unless you have a paid account. That’s one of the features of a paid account, which is to encourage people to join. I doubt there’s any way around it, because if the server doesn’t allow it, then there’s nothing much you can do from you side.

Leave A Reply

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Stay on top - Get updates in your inbox