Basically I want to download a file, but then have it automatically update if the web version changes.

  • I'm expecting the web version to have a static URL.
  • I'd like to be able to move the file around and still have this same magical property, in the same way a .lnk or symlink always points to the same resource.
  • Unlike a symlink, if the web version can't be reached, the local version should still exist as the latest downloaded version.
  • If the web version changes to a 404 page, etc. the local version should still exist as the most recent successfully downloaded version.
  • I don't want the file to be inside some weird "web folder" or something, but a symlink to this location might be ok.



I don't know of any way to do what you would like, by virtue of your request. Here is why:

If you connect to a network such as at Starbucks, Panera, McDonalds, etc, your HTTP file request will be met with an HTML login or "agree to our terms of service" page. Any programmatic solution that would check the web file for updates would see that this landing page is different than the most recent local copy of your file, thereby replacing your local copy with the landing page HTML data.

Of course, if your file has a certain kind of distinguishable header that would realistically never occur in any other web-accessible file, you could code your own solution that would check the HTTP response for a header of the same format and ignore the results if the response data doesn't contain a valid header format; however, due to the specificity of your request, you're unlikely to find a suitable non-custom solution.

Honestly, if you're really interested in making this happen, you could probably persuade a computer science professor at your local university or community college to have a student or students do it for a project (again assuming your file has an identifiable header).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.